11from collections .abc import Mapping , MutableSequence
2- from typing import Any , TypeVar
2+ from typing import Any , NoReturn , TypeVar
33
44import google .protobuf .message
55import proto
6+ from typing_extensions import Literal
67
78from google .ads .googleads .v13 .common .types .ad_asset import (
89 AdDiscoveryCarouselCardAsset ,
@@ -47,6 +48,7 @@ class AppAdInfo(proto.Message):
4748 youtube_videos : MutableSequence [AdVideoAsset ] = ...,
4849 html5_media_bundles : MutableSequence [AdMediaBundleAsset ] = ...,
4950 ) -> None : ...
51+ def __contains__ (self , key : Literal ["mandatory_ad_text" , "headlines" , "descriptions" , "images" , "youtube_videos" , "html5_media_bundles" ]) -> bool : ... # type: ignore[override]
5052
5153class AppEngagementAdInfo (proto .Message ):
5254 headlines : MutableSequence [AdTextAsset ]
@@ -63,6 +65,7 @@ class AppEngagementAdInfo(proto.Message):
6365 images : MutableSequence [AdImageAsset ] = ...,
6466 videos : MutableSequence [AdVideoAsset ] = ...,
6567 ) -> None : ...
68+ def __contains__ (self , key : Literal ["headlines" , "descriptions" , "images" , "videos" ]) -> bool : ... # type: ignore[override]
6669
6770class AppPreRegistrationAdInfo (proto .Message ):
6871 headlines : MutableSequence [AdTextAsset ]
@@ -79,6 +82,7 @@ class AppPreRegistrationAdInfo(proto.Message):
7982 images : MutableSequence [AdImageAsset ] = ...,
8083 youtube_videos : MutableSequence [AdVideoAsset ] = ...,
8184 ) -> None : ...
85+ def __contains__ (self , key : Literal ["headlines" , "descriptions" , "images" , "youtube_videos" ]) -> bool : ... # type: ignore[override]
8286
8387class CallAdInfo (proto .Message ):
8488 country_code : str
@@ -115,6 +119,7 @@ class CallAdInfo(proto.Message):
115119 path1 : str = ...,
116120 path2 : str = ...,
117121 ) -> None : ...
122+ def __contains__ (self , key : Literal ["country_code" , "phone_number" , "business_name" , "headline1" , "headline2" , "description1" , "description2" , "call_tracked" , "disable_call_conversion" , "phone_number_verification_url" , "conversion_action" , "conversion_reporting_state" , "path1" , "path2" ]) -> bool : ... # type: ignore[override]
118123
119124class DiscoveryCarouselAdInfo (proto .Message ):
120125 business_name : str
@@ -135,6 +140,7 @@ class DiscoveryCarouselAdInfo(proto.Message):
135140 call_to_action_text : str = ...,
136141 carousel_cards : MutableSequence [AdDiscoveryCarouselCardAsset ] = ...,
137142 ) -> None : ...
143+ def __contains__ (self , key : Literal ["business_name" , "logo_image" , "headline" , "description" , "call_to_action_text" , "carousel_cards" ]) -> bool : ... # type: ignore[override]
138144
139145class DiscoveryMultiAssetAdInfo (proto .Message ):
140146 marketing_images : MutableSequence [AdImageAsset ]
@@ -161,6 +167,7 @@ class DiscoveryMultiAssetAdInfo(proto.Message):
161167 call_to_action_text : str = ...,
162168 lead_form_only : bool = ...,
163169 ) -> None : ...
170+ def __contains__ (self , key : Literal ["marketing_images" , "square_marketing_images" , "portrait_marketing_images" , "logo_images" , "headlines" , "descriptions" , "business_name" , "call_to_action_text" , "lead_form_only" ]) -> bool : ... # type: ignore[override]
164171
165172class DisplayUploadAdInfo (proto .Message ):
166173 display_upload_product_type : DisplayUploadProductTypeEnum .DisplayUploadProductType
@@ -173,6 +180,7 @@ class DisplayUploadAdInfo(proto.Message):
173180 display_upload_product_type : DisplayUploadProductTypeEnum .DisplayUploadProductType = ...,
174181 media_bundle : AdMediaBundleAsset = ...,
175182 ) -> None : ...
183+ def __contains__ (self , key : Literal ["display_upload_product_type" , "media_bundle" ]) -> bool : ... # type: ignore[override]
176184
177185class ExpandedDynamicSearchAdInfo (proto .Message ):
178186 description : str
@@ -185,6 +193,7 @@ class ExpandedDynamicSearchAdInfo(proto.Message):
185193 description : str = ...,
186194 description2 : str = ...,
187195 ) -> None : ...
196+ def __contains__ (self , key : Literal ["description" , "description2" ]) -> bool : ... # type: ignore[override]
188197
189198class ExpandedTextAdInfo (proto .Message ):
190199 headline_part1 : str
@@ -207,6 +216,7 @@ class ExpandedTextAdInfo(proto.Message):
207216 path1 : str = ...,
208217 path2 : str = ...,
209218 ) -> None : ...
219+ def __contains__ (self , key : Literal ["headline_part1" , "headline_part2" , "headline_part3" , "description" , "description2" , "path1" , "path2" ]) -> bool : ... # type: ignore[override]
210220
211221class HotelAdInfo (proto .Message ):
212222 def __init__ (
@@ -215,6 +225,7 @@ class HotelAdInfo(proto.Message):
215225 * ,
216226 ignore_unknown_fields : bool = False ,
217227 ) -> None : ...
228+ def __contains__ (self , key : NoReturn ) -> bool : ... # type: ignore[override]
218229
219230class ImageAdInfo (proto .Message ):
220231 pixel_width : int
@@ -245,6 +256,7 @@ class ImageAdInfo(proto.Message):
245256 data : bytes = ...,
246257 ad_id_to_copy_image_from : int = ...,
247258 ) -> None : ...
259+ def __contains__ (self , key : Literal ["pixel_width" , "pixel_height" , "image_url" , "preview_pixel_width" , "preview_pixel_height" , "preview_image_url" , "mime_type" , "name" , "media_file" , "data" , "ad_id_to_copy_image_from" ]) -> bool : ... # type: ignore[override]
248260
249261class InFeedVideoAdInfo (proto .Message ):
250262 headline : str
@@ -261,6 +273,7 @@ class InFeedVideoAdInfo(proto.Message):
261273 description2 : str = ...,
262274 thumbnail : VideoThumbnailEnum .VideoThumbnail = ...,
263275 ) -> None : ...
276+ def __contains__ (self , key : Literal ["headline" , "description1" , "description2" , "thumbnail" ]) -> bool : ... # type: ignore[override]
264277
265278class LegacyAppInstallAdInfo (proto .Message ):
266279 app_id : str
@@ -279,6 +292,7 @@ class LegacyAppInstallAdInfo(proto.Message):
279292 description1 : str = ...,
280293 description2 : str = ...,
281294 ) -> None : ...
295+ def __contains__ (self , key : Literal ["app_id" , "app_store" , "headline" , "description1" , "description2" ]) -> bool : ... # type: ignore[override]
282296
283297class LegacyResponsiveDisplayAdInfo (proto .Message ):
284298 short_headline : str
@@ -317,6 +331,7 @@ class LegacyResponsiveDisplayAdInfo(proto.Message):
317331 price_prefix : str = ...,
318332 promo_text : str = ...,
319333 ) -> None : ...
334+ def __contains__ (self , key : Literal ["short_headline" , "long_headline" , "description" , "business_name" , "allow_flexible_color" , "accent_color" , "main_color" , "call_to_action_text" , "logo_image" , "square_logo_image" , "marketing_image" , "square_marketing_image" , "format_setting" , "price_prefix" , "promo_text" ]) -> bool : ... # type: ignore[override]
320335
321336class LocalAdInfo (proto .Message ):
322337 headlines : MutableSequence [AdTextAsset ]
@@ -341,6 +356,7 @@ class LocalAdInfo(proto.Message):
341356 path1 : str = ...,
342357 path2 : str = ...,
343358 ) -> None : ...
359+ def __contains__ (self , key : Literal ["headlines" , "descriptions" , "call_to_actions" , "marketing_images" , "logo_images" , "videos" , "path1" , "path2" ]) -> bool : ... # type: ignore[override]
344360
345361class ResponsiveDisplayAdControlSpec (proto .Message ):
346362 enable_asset_enhancements : bool
@@ -353,6 +369,7 @@ class ResponsiveDisplayAdControlSpec(proto.Message):
353369 enable_asset_enhancements : bool = ...,
354370 enable_autogen_video : bool = ...,
355371 ) -> None : ...
372+ def __contains__ (self , key : Literal ["enable_asset_enhancements" , "enable_autogen_video" ]) -> bool : ... # type: ignore[override]
356373
357374class ResponsiveDisplayAdInfo (proto .Message ):
358375 marketing_images : MutableSequence [AdImageAsset ]
@@ -395,6 +412,7 @@ class ResponsiveDisplayAdInfo(proto.Message):
395412 format_setting : DisplayAdFormatSettingEnum .DisplayAdFormatSetting = ...,
396413 control_spec : ResponsiveDisplayAdControlSpec = ...,
397414 ) -> None : ...
415+ def __contains__ (self , key : Literal ["marketing_images" , "square_marketing_images" , "logo_images" , "square_logo_images" , "headlines" , "long_headline" , "descriptions" , "youtube_videos" , "business_name" , "main_color" , "accent_color" , "allow_flexible_color" , "call_to_action_text" , "price_prefix" , "promo_text" , "format_setting" , "control_spec" ]) -> bool : ... # type: ignore[override]
398416
399417class ResponsiveSearchAdInfo (proto .Message ):
400418 headlines : MutableSequence [AdTextAsset ]
@@ -411,6 +429,7 @@ class ResponsiveSearchAdInfo(proto.Message):
411429 path1 : str = ...,
412430 path2 : str = ...,
413431 ) -> None : ...
432+ def __contains__ (self , key : Literal ["headlines" , "descriptions" , "path1" , "path2" ]) -> bool : ... # type: ignore[override]
414433
415434class ShoppingComparisonListingAdInfo (proto .Message ):
416435 headline : str
@@ -421,6 +440,7 @@ class ShoppingComparisonListingAdInfo(proto.Message):
421440 ignore_unknown_fields : bool = False ,
422441 headline : str = ...,
423442 ) -> None : ...
443+ def __contains__ (self , key : Literal ["headline" ]) -> bool : ... # type: ignore[override]
424444
425445class ShoppingProductAdInfo (proto .Message ):
426446 def __init__ (
@@ -429,6 +449,7 @@ class ShoppingProductAdInfo(proto.Message):
429449 * ,
430450 ignore_unknown_fields : bool = False ,
431451 ) -> None : ...
452+ def __contains__ (self , key : NoReturn ) -> bool : ... # type: ignore[override]
432453
433454class ShoppingSmartAdInfo (proto .Message ):
434455 def __init__ (
@@ -437,6 +458,7 @@ class ShoppingSmartAdInfo(proto.Message):
437458 * ,
438459 ignore_unknown_fields : bool = False ,
439460 ) -> None : ...
461+ def __contains__ (self , key : NoReturn ) -> bool : ... # type: ignore[override]
440462
441463class SmartCampaignAdInfo (proto .Message ):
442464 headlines : MutableSequence [AdTextAsset ]
@@ -449,6 +471,7 @@ class SmartCampaignAdInfo(proto.Message):
449471 headlines : MutableSequence [AdTextAsset ] = ...,
450472 descriptions : MutableSequence [AdTextAsset ] = ...,
451473 ) -> None : ...
474+ def __contains__ (self , key : Literal ["headlines" , "descriptions" ]) -> bool : ... # type: ignore[override]
452475
453476class TextAdInfo (proto .Message ):
454477 headline : str
@@ -463,6 +486,7 @@ class TextAdInfo(proto.Message):
463486 description1 : str = ...,
464487 description2 : str = ...,
465488 ) -> None : ...
489+ def __contains__ (self , key : Literal ["headline" , "description1" , "description2" ]) -> bool : ... # type: ignore[override]
466490
467491class TravelAdInfo (proto .Message ):
468492 def __init__ (
@@ -471,6 +495,7 @@ class TravelAdInfo(proto.Message):
471495 * ,
472496 ignore_unknown_fields : bool = False ,
473497 ) -> None : ...
498+ def __contains__ (self , key : NoReturn ) -> bool : ... # type: ignore[override]
474499
475500class VideoAdInfo (proto .Message ):
476501 video : AdVideoAsset
@@ -491,6 +516,7 @@ class VideoAdInfo(proto.Message):
491516 non_skippable : VideoNonSkippableInStreamAdInfo = ...,
492517 in_feed : InFeedVideoAdInfo = ...,
493518 ) -> None : ...
519+ def __contains__ (self , key : Literal ["video" , "in_stream" , "bumper" , "out_stream" , "non_skippable" , "in_feed" ]) -> bool : ... # type: ignore[override]
494520
495521class VideoBumperInStreamAdInfo (proto .Message ):
496522 companion_banner : AdImageAsset
@@ -505,6 +531,7 @@ class VideoBumperInStreamAdInfo(proto.Message):
505531 action_button_label : str = ...,
506532 action_headline : str = ...,
507533 ) -> None : ...
534+ def __contains__ (self , key : Literal ["companion_banner" , "action_button_label" , "action_headline" ]) -> bool : ... # type: ignore[override]
508535
509536class VideoNonSkippableInStreamAdInfo (proto .Message ):
510537 companion_banner : AdImageAsset
@@ -519,6 +546,7 @@ class VideoNonSkippableInStreamAdInfo(proto.Message):
519546 action_button_label : str = ...,
520547 action_headline : str = ...,
521548 ) -> None : ...
549+ def __contains__ (self , key : Literal ["companion_banner" , "action_button_label" , "action_headline" ]) -> bool : ... # type: ignore[override]
522550
523551class VideoOutstreamAdInfo (proto .Message ):
524552 headline : str
@@ -531,6 +559,7 @@ class VideoOutstreamAdInfo(proto.Message):
531559 headline : str = ...,
532560 description : str = ...,
533561 ) -> None : ...
562+ def __contains__ (self , key : Literal ["headline" , "description" ]) -> bool : ... # type: ignore[override]
534563
535564class VideoResponsiveAdInfo (proto .Message ):
536565 headlines : MutableSequence [AdTextAsset ]
@@ -555,6 +584,7 @@ class VideoResponsiveAdInfo(proto.Message):
555584 breadcrumb1 : str = ...,
556585 breadcrumb2 : str = ...,
557586 ) -> None : ...
587+ def __contains__ (self , key : Literal ["headlines" , "long_headlines" , "descriptions" , "call_to_actions" , "videos" , "companion_banners" , "breadcrumb1" , "breadcrumb2" ]) -> bool : ... # type: ignore[override]
558588
559589class VideoTrueViewInStreamAdInfo (proto .Message ):
560590 action_button_label : str
@@ -569,3 +599,4 @@ class VideoTrueViewInStreamAdInfo(proto.Message):
569599 action_headline : str = ...,
570600 companion_banner : AdImageAsset = ...,
571601 ) -> None : ...
602+ def __contains__ (self , key : Literal ["action_button_label" , "action_headline" , "companion_banner" ]) -> bool : ... # type: ignore[override]
0 commit comments