pulumiverse-scaleway 1.26.0a1742897201__py3-none-any.whl → 1.27.0a1743490704__py3-none-any.whl

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (66) hide show
  1. pulumiverse_scaleway/__init__.py +105 -0
  2. pulumiverse_scaleway/_inputs.py +663 -0
  3. pulumiverse_scaleway/apple_silicon_server.py +105 -0
  4. pulumiverse_scaleway/applesilicon/server.py +105 -0
  5. pulumiverse_scaleway/domain/__init__.py +1 -0
  6. pulumiverse_scaleway/domain/_inputs.py +2697 -0
  7. pulumiverse_scaleway/domain/outputs.py +2145 -0
  8. pulumiverse_scaleway/domain/registration.py +777 -0
  9. pulumiverse_scaleway/edge_services_backend_stage.py +472 -0
  10. pulumiverse_scaleway/edge_services_cache_stage.py +490 -0
  11. pulumiverse_scaleway/edge_services_dns_stage.py +516 -0
  12. pulumiverse_scaleway/edge_services_head_stage.py +258 -0
  13. pulumiverse_scaleway/edge_services_pipeline.py +436 -0
  14. pulumiverse_scaleway/edge_services_plan.py +239 -0
  15. pulumiverse_scaleway/edge_services_route_stage.py +422 -0
  16. pulumiverse_scaleway/edge_services_tls_stage.py +546 -0
  17. pulumiverse_scaleway/edge_services_waf_stage.py +444 -0
  18. pulumiverse_scaleway/elasticmetal/ip.py +13 -7
  19. pulumiverse_scaleway/flexible_ip.py +13 -7
  20. pulumiverse_scaleway/get_lb_frontend.py +12 -1
  21. pulumiverse_scaleway/get_lb_route.py +12 -1
  22. pulumiverse_scaleway/get_secret.py +15 -4
  23. pulumiverse_scaleway/get_vpc_public_gateway.py +34 -1
  24. pulumiverse_scaleway/get_vpc_public_gateway_dhcp.py +8 -0
  25. pulumiverse_scaleway/get_vpc_public_gateway_dhcp_reservation.py +8 -0
  26. pulumiverse_scaleway/loadbalancer_backend.py +2 -2
  27. pulumiverse_scaleway/loadbalancer_frontend.py +47 -0
  28. pulumiverse_scaleway/loadbalancer_route.py +48 -1
  29. pulumiverse_scaleway/loadbalancers/backend.py +2 -2
  30. pulumiverse_scaleway/loadbalancers/frontend.py +47 -0
  31. pulumiverse_scaleway/loadbalancers/get_frontend.py +12 -1
  32. pulumiverse_scaleway/loadbalancers/get_route.py +12 -1
  33. pulumiverse_scaleway/loadbalancers/outputs.py +13 -2
  34. pulumiverse_scaleway/loadbalancers/route.py +48 -1
  35. pulumiverse_scaleway/network/__init__.py +1 -0
  36. pulumiverse_scaleway/network/_inputs.py +194 -0
  37. pulumiverse_scaleway/network/acl.py +415 -0
  38. pulumiverse_scaleway/network/gateway_network.py +104 -122
  39. pulumiverse_scaleway/network/get_public_gateway.py +34 -1
  40. pulumiverse_scaleway/network/get_public_gateway_dhcp.py +8 -0
  41. pulumiverse_scaleway/network/get_public_gateway_dhcp_reservation.py +8 -0
  42. pulumiverse_scaleway/network/outputs.py +139 -0
  43. pulumiverse_scaleway/network/public_gateway.py +124 -21
  44. pulumiverse_scaleway/network/public_gateway_dhcp.py +8 -0
  45. pulumiverse_scaleway/network/public_gateway_dhcp_reservation.py +8 -0
  46. pulumiverse_scaleway/outputs.py +662 -2
  47. pulumiverse_scaleway/pulumi-plugin.json +1 -1
  48. pulumiverse_scaleway/secret.py +22 -2
  49. pulumiverse_scaleway/secret_version.py +6 -6
  50. pulumiverse_scaleway/secrets/_inputs.py +154 -0
  51. pulumiverse_scaleway/secrets/get_secret.py +15 -4
  52. pulumiverse_scaleway/secrets/outputs.py +200 -0
  53. pulumiverse_scaleway/secrets/secret.py +22 -2
  54. pulumiverse_scaleway/tem/__init__.py +2 -0
  55. pulumiverse_scaleway/tem/blocked_list.py +442 -0
  56. pulumiverse_scaleway/tem/domain.py +7 -0
  57. pulumiverse_scaleway/tem/get_offer_subscription.py +254 -0
  58. pulumiverse_scaleway/tem_domain.py +7 -0
  59. pulumiverse_scaleway/vpc_gateway_network.py +104 -122
  60. pulumiverse_scaleway/vpc_public_gateway.py +124 -21
  61. pulumiverse_scaleway/vpc_public_gateway_dhcp.py +8 -0
  62. pulumiverse_scaleway/vpc_public_gateway_dhcp_reservation.py +8 -0
  63. {pulumiverse_scaleway-1.26.0a1742897201.dist-info → pulumiverse_scaleway-1.27.0a1743490704.dist-info}/METADATA +1 -1
  64. {pulumiverse_scaleway-1.26.0a1742897201.dist-info → pulumiverse_scaleway-1.27.0a1743490704.dist-info}/RECORD +66 -53
  65. {pulumiverse_scaleway-1.26.0a1742897201.dist-info → pulumiverse_scaleway-1.27.0a1743490704.dist-info}/WHEEL +1 -1
  66. {pulumiverse_scaleway-1.26.0a1742897201.dist-info → pulumiverse_scaleway-1.27.0a1743490704.dist-info}/top_level.txt +0 -0
@@ -21,6 +21,34 @@ __all__ = [
21
21
  'RecordHttpService',
22
22
  'RecordView',
23
23
  'RecordWeighted',
24
+ 'RegistrationAdministrativeContact',
25
+ 'RegistrationAdministrativeContactExtensionEu',
26
+ 'RegistrationAdministrativeContactExtensionFr',
27
+ 'RegistrationAdministrativeContactExtensionFrAssociationInfo',
28
+ 'RegistrationAdministrativeContactExtensionFrCodeAuthAfnicInfo',
29
+ 'RegistrationAdministrativeContactExtensionFrDunsInfo',
30
+ 'RegistrationAdministrativeContactExtensionFrIndividualInfo',
31
+ 'RegistrationAdministrativeContactExtensionFrTrademarkInfo',
32
+ 'RegistrationDsRecord',
33
+ 'RegistrationDsRecordDigest',
34
+ 'RegistrationDsRecordDigestPublicKey',
35
+ 'RegistrationDsRecordPublicKey',
36
+ 'RegistrationOwnerContact',
37
+ 'RegistrationOwnerContactExtensionEu',
38
+ 'RegistrationOwnerContactExtensionFr',
39
+ 'RegistrationOwnerContactExtensionFrAssociationInfo',
40
+ 'RegistrationOwnerContactExtensionFrCodeAuthAfnicInfo',
41
+ 'RegistrationOwnerContactExtensionFrDunsInfo',
42
+ 'RegistrationOwnerContactExtensionFrIndividualInfo',
43
+ 'RegistrationOwnerContactExtensionFrTrademarkInfo',
44
+ 'RegistrationTechnicalContact',
45
+ 'RegistrationTechnicalContactExtensionEu',
46
+ 'RegistrationTechnicalContactExtensionFr',
47
+ 'RegistrationTechnicalContactExtensionFrAssociationInfo',
48
+ 'RegistrationTechnicalContactExtensionFrCodeAuthAfnicInfo',
49
+ 'RegistrationTechnicalContactExtensionFrDunsInfo',
50
+ 'RegistrationTechnicalContactExtensionFrIndividualInfo',
51
+ 'RegistrationTechnicalContactExtensionFrTrademarkInfo',
24
52
  'GetRecordGeoIpResult',
25
53
  'GetRecordGeoIpMatchResult',
26
54
  'GetRecordHttpServiceResult',
@@ -228,6 +256,2123 @@ class RecordWeighted(dict):
228
256
  return pulumi.get(self, "weight")
229
257
 
230
258
 
259
+ @pulumi.output_type
260
+ class RegistrationAdministrativeContact(dict):
261
+ @staticmethod
262
+ def __key_warning(key: str):
263
+ suggest = None
264
+ if key == "addressLine1":
265
+ suggest = "address_line1"
266
+ elif key == "companyIdentificationCode":
267
+ suggest = "company_identification_code"
268
+ elif key == "legalForm":
269
+ suggest = "legal_form"
270
+ elif key == "phoneNumber":
271
+ suggest = "phone_number"
272
+ elif key == "vatIdentificationCode":
273
+ suggest = "vat_identification_code"
274
+ elif key == "addressLine2":
275
+ suggest = "address_line2"
276
+ elif key == "companyName":
277
+ suggest = "company_name"
278
+ elif key == "emailAlt":
279
+ suggest = "email_alt"
280
+ elif key == "extensionEu":
281
+ suggest = "extension_eu"
282
+ elif key == "extensionFr":
283
+ suggest = "extension_fr"
284
+ elif key == "extensionNls":
285
+ suggest = "extension_nls"
286
+ elif key == "faxNumber":
287
+ suggest = "fax_number"
288
+ elif key == "whoisOptIn":
289
+ suggest = "whois_opt_in"
290
+
291
+ if suggest:
292
+ pulumi.log.warn(f"Key '{key}' not found in RegistrationAdministrativeContact. Access the value via the '{suggest}' property getter instead.")
293
+
294
+ def __getitem__(self, key: str) -> Any:
295
+ RegistrationAdministrativeContact.__key_warning(key)
296
+ return super().__getitem__(key)
297
+
298
+ def get(self, key: str, default = None) -> Any:
299
+ RegistrationAdministrativeContact.__key_warning(key)
300
+ return super().get(key, default)
301
+
302
+ def __init__(__self__, *,
303
+ address_line1: str,
304
+ city: str,
305
+ company_identification_code: str,
306
+ country: str,
307
+ email: str,
308
+ firstname: str,
309
+ lastname: str,
310
+ legal_form: str,
311
+ phone_number: str,
312
+ vat_identification_code: str,
313
+ zip: str,
314
+ address_line2: Optional[str] = None,
315
+ company_name: Optional[str] = None,
316
+ email_alt: Optional[str] = None,
317
+ extension_eu: Optional['outputs.RegistrationAdministrativeContactExtensionEu'] = None,
318
+ extension_fr: Optional['outputs.RegistrationAdministrativeContactExtensionFr'] = None,
319
+ extension_nls: Optional[Sequence[str]] = None,
320
+ fax_number: Optional[str] = None,
321
+ lang: Optional[str] = None,
322
+ resale: Optional[bool] = None,
323
+ state: Optional[str] = None,
324
+ whois_opt_in: Optional[bool] = None):
325
+ """
326
+ :param str address_line1: Primary address line for the contact.
327
+ :param str city: City of the contact's address.
328
+ :param str company_identification_code: Company identification code (e.g., SIREN/SIRET in France) for the contact.
329
+ :param str country: Country code of the contact's address (ISO format).
330
+ :param str email: Primary email address of the contact.
331
+ :param str firstname: First name of the contact.
332
+ :param str lastname: Last name of the contact.
333
+ :param str legal_form: Legal form of the contact (e.g., 'individual' or 'organization').
334
+ :param str phone_number: Primary phone number of the contact.
335
+ :param str vat_identification_code: VAT identification code of the contact, if applicable.
336
+ :param str zip: Postal code of the contact's address.
337
+ :param str address_line2: Secondary address line for the contact (optional).
338
+ :param str company_name: Name of the company associated with the contact (if applicable).
339
+ :param str email_alt: Alternative email address for the contact.
340
+ :param 'RegistrationAdministrativeContactExtensionEuArgs' extension_eu: Details specific to European domain extensions.
341
+ :param 'RegistrationAdministrativeContactExtensionFrArgs' extension_fr: Details specific to French domain extensions.
342
+ :param Sequence[str] extension_nls: Extension details specific to Dutch domain registrations.
343
+ :param str fax_number: Fax number for the contact (if available).
344
+ :param str lang: Preferred language of the contact (e.g., 'en_US', 'fr_FR').
345
+ :param bool resale: Indicates if the contact is used for resale purposes.
346
+ :param str state: State or region of the contact.
347
+ :param bool whois_opt_in: Indicates whether the contact has opted into WHOIS publishing.
348
+ """
349
+ pulumi.set(__self__, "address_line1", address_line1)
350
+ pulumi.set(__self__, "city", city)
351
+ pulumi.set(__self__, "company_identification_code", company_identification_code)
352
+ pulumi.set(__self__, "country", country)
353
+ pulumi.set(__self__, "email", email)
354
+ pulumi.set(__self__, "firstname", firstname)
355
+ pulumi.set(__self__, "lastname", lastname)
356
+ pulumi.set(__self__, "legal_form", legal_form)
357
+ pulumi.set(__self__, "phone_number", phone_number)
358
+ pulumi.set(__self__, "vat_identification_code", vat_identification_code)
359
+ pulumi.set(__self__, "zip", zip)
360
+ if address_line2 is not None:
361
+ pulumi.set(__self__, "address_line2", address_line2)
362
+ if company_name is not None:
363
+ pulumi.set(__self__, "company_name", company_name)
364
+ if email_alt is not None:
365
+ pulumi.set(__self__, "email_alt", email_alt)
366
+ if extension_eu is not None:
367
+ pulumi.set(__self__, "extension_eu", extension_eu)
368
+ if extension_fr is not None:
369
+ pulumi.set(__self__, "extension_fr", extension_fr)
370
+ if extension_nls is not None:
371
+ pulumi.set(__self__, "extension_nls", extension_nls)
372
+ if fax_number is not None:
373
+ pulumi.set(__self__, "fax_number", fax_number)
374
+ if lang is not None:
375
+ pulumi.set(__self__, "lang", lang)
376
+ if resale is not None:
377
+ pulumi.set(__self__, "resale", resale)
378
+ if state is not None:
379
+ pulumi.set(__self__, "state", state)
380
+ if whois_opt_in is not None:
381
+ pulumi.set(__self__, "whois_opt_in", whois_opt_in)
382
+
383
+ @property
384
+ @pulumi.getter(name="addressLine1")
385
+ def address_line1(self) -> str:
386
+ """
387
+ Primary address line for the contact.
388
+ """
389
+ return pulumi.get(self, "address_line1")
390
+
391
+ @property
392
+ @pulumi.getter
393
+ def city(self) -> str:
394
+ """
395
+ City of the contact's address.
396
+ """
397
+ return pulumi.get(self, "city")
398
+
399
+ @property
400
+ @pulumi.getter(name="companyIdentificationCode")
401
+ def company_identification_code(self) -> str:
402
+ """
403
+ Company identification code (e.g., SIREN/SIRET in France) for the contact.
404
+ """
405
+ return pulumi.get(self, "company_identification_code")
406
+
407
+ @property
408
+ @pulumi.getter
409
+ def country(self) -> str:
410
+ """
411
+ Country code of the contact's address (ISO format).
412
+ """
413
+ return pulumi.get(self, "country")
414
+
415
+ @property
416
+ @pulumi.getter
417
+ def email(self) -> str:
418
+ """
419
+ Primary email address of the contact.
420
+ """
421
+ return pulumi.get(self, "email")
422
+
423
+ @property
424
+ @pulumi.getter
425
+ def firstname(self) -> str:
426
+ """
427
+ First name of the contact.
428
+ """
429
+ return pulumi.get(self, "firstname")
430
+
431
+ @property
432
+ @pulumi.getter
433
+ def lastname(self) -> str:
434
+ """
435
+ Last name of the contact.
436
+ """
437
+ return pulumi.get(self, "lastname")
438
+
439
+ @property
440
+ @pulumi.getter(name="legalForm")
441
+ def legal_form(self) -> str:
442
+ """
443
+ Legal form of the contact (e.g., 'individual' or 'organization').
444
+ """
445
+ return pulumi.get(self, "legal_form")
446
+
447
+ @property
448
+ @pulumi.getter(name="phoneNumber")
449
+ def phone_number(self) -> str:
450
+ """
451
+ Primary phone number of the contact.
452
+ """
453
+ return pulumi.get(self, "phone_number")
454
+
455
+ @property
456
+ @pulumi.getter(name="vatIdentificationCode")
457
+ def vat_identification_code(self) -> str:
458
+ """
459
+ VAT identification code of the contact, if applicable.
460
+ """
461
+ return pulumi.get(self, "vat_identification_code")
462
+
463
+ @property
464
+ @pulumi.getter
465
+ def zip(self) -> str:
466
+ """
467
+ Postal code of the contact's address.
468
+ """
469
+ return pulumi.get(self, "zip")
470
+
471
+ @property
472
+ @pulumi.getter(name="addressLine2")
473
+ def address_line2(self) -> Optional[str]:
474
+ """
475
+ Secondary address line for the contact (optional).
476
+ """
477
+ return pulumi.get(self, "address_line2")
478
+
479
+ @property
480
+ @pulumi.getter(name="companyName")
481
+ def company_name(self) -> Optional[str]:
482
+ """
483
+ Name of the company associated with the contact (if applicable).
484
+ """
485
+ return pulumi.get(self, "company_name")
486
+
487
+ @property
488
+ @pulumi.getter(name="emailAlt")
489
+ def email_alt(self) -> Optional[str]:
490
+ """
491
+ Alternative email address for the contact.
492
+ """
493
+ return pulumi.get(self, "email_alt")
494
+
495
+ @property
496
+ @pulumi.getter(name="extensionEu")
497
+ def extension_eu(self) -> Optional['outputs.RegistrationAdministrativeContactExtensionEu']:
498
+ """
499
+ Details specific to European domain extensions.
500
+ """
501
+ return pulumi.get(self, "extension_eu")
502
+
503
+ @property
504
+ @pulumi.getter(name="extensionFr")
505
+ def extension_fr(self) -> Optional['outputs.RegistrationAdministrativeContactExtensionFr']:
506
+ """
507
+ Details specific to French domain extensions.
508
+ """
509
+ return pulumi.get(self, "extension_fr")
510
+
511
+ @property
512
+ @pulumi.getter(name="extensionNls")
513
+ def extension_nls(self) -> Optional[Sequence[str]]:
514
+ """
515
+ Extension details specific to Dutch domain registrations.
516
+ """
517
+ return pulumi.get(self, "extension_nls")
518
+
519
+ @property
520
+ @pulumi.getter(name="faxNumber")
521
+ def fax_number(self) -> Optional[str]:
522
+ """
523
+ Fax number for the contact (if available).
524
+ """
525
+ return pulumi.get(self, "fax_number")
526
+
527
+ @property
528
+ @pulumi.getter
529
+ def lang(self) -> Optional[str]:
530
+ """
531
+ Preferred language of the contact (e.g., 'en_US', 'fr_FR').
532
+ """
533
+ return pulumi.get(self, "lang")
534
+
535
+ @property
536
+ @pulumi.getter
537
+ def resale(self) -> Optional[bool]:
538
+ """
539
+ Indicates if the contact is used for resale purposes.
540
+ """
541
+ return pulumi.get(self, "resale")
542
+
543
+ @property
544
+ @pulumi.getter
545
+ def state(self) -> Optional[str]:
546
+ """
547
+ State or region of the contact.
548
+ """
549
+ return pulumi.get(self, "state")
550
+
551
+ @property
552
+ @pulumi.getter(name="whoisOptIn")
553
+ def whois_opt_in(self) -> Optional[bool]:
554
+ """
555
+ Indicates whether the contact has opted into WHOIS publishing.
556
+ """
557
+ return pulumi.get(self, "whois_opt_in")
558
+
559
+
560
+ @pulumi.output_type
561
+ class RegistrationAdministrativeContactExtensionEu(dict):
562
+ @staticmethod
563
+ def __key_warning(key: str):
564
+ suggest = None
565
+ if key == "europeanCitizenship":
566
+ suggest = "european_citizenship"
567
+
568
+ if suggest:
569
+ pulumi.log.warn(f"Key '{key}' not found in RegistrationAdministrativeContactExtensionEu. Access the value via the '{suggest}' property getter instead.")
570
+
571
+ def __getitem__(self, key: str) -> Any:
572
+ RegistrationAdministrativeContactExtensionEu.__key_warning(key)
573
+ return super().__getitem__(key)
574
+
575
+ def get(self, key: str, default = None) -> Any:
576
+ RegistrationAdministrativeContactExtensionEu.__key_warning(key)
577
+ return super().get(key, default)
578
+
579
+ def __init__(__self__, *,
580
+ european_citizenship: Optional[str] = None):
581
+ """
582
+ :param str european_citizenship: Indicates the European citizenship of the contact.
583
+ """
584
+ if european_citizenship is not None:
585
+ pulumi.set(__self__, "european_citizenship", european_citizenship)
586
+
587
+ @property
588
+ @pulumi.getter(name="europeanCitizenship")
589
+ def european_citizenship(self) -> Optional[str]:
590
+ """
591
+ Indicates the European citizenship of the contact.
592
+ """
593
+ return pulumi.get(self, "european_citizenship")
594
+
595
+
596
+ @pulumi.output_type
597
+ class RegistrationAdministrativeContactExtensionFr(dict):
598
+ @staticmethod
599
+ def __key_warning(key: str):
600
+ suggest = None
601
+ if key == "associationInfo":
602
+ suggest = "association_info"
603
+ elif key == "codeAuthAfnicInfo":
604
+ suggest = "code_auth_afnic_info"
605
+ elif key == "dunsInfo":
606
+ suggest = "duns_info"
607
+ elif key == "individualInfo":
608
+ suggest = "individual_info"
609
+ elif key == "trademarkInfo":
610
+ suggest = "trademark_info"
611
+
612
+ if suggest:
613
+ pulumi.log.warn(f"Key '{key}' not found in RegistrationAdministrativeContactExtensionFr. Access the value via the '{suggest}' property getter instead.")
614
+
615
+ def __getitem__(self, key: str) -> Any:
616
+ RegistrationAdministrativeContactExtensionFr.__key_warning(key)
617
+ return super().__getitem__(key)
618
+
619
+ def get(self, key: str, default = None) -> Any:
620
+ RegistrationAdministrativeContactExtensionFr.__key_warning(key)
621
+ return super().get(key, default)
622
+
623
+ def __init__(__self__, *,
624
+ association_info: Optional['outputs.RegistrationAdministrativeContactExtensionFrAssociationInfo'] = None,
625
+ code_auth_afnic_info: Optional['outputs.RegistrationAdministrativeContactExtensionFrCodeAuthAfnicInfo'] = None,
626
+ duns_info: Optional['outputs.RegistrationAdministrativeContactExtensionFrDunsInfo'] = None,
627
+ individual_info: Optional['outputs.RegistrationAdministrativeContactExtensionFrIndividualInfo'] = None,
628
+ mode: Optional[str] = None,
629
+ trademark_info: Optional['outputs.RegistrationAdministrativeContactExtensionFrTrademarkInfo'] = None):
630
+ """
631
+ :param 'RegistrationAdministrativeContactExtensionFrAssociationInfoArgs' association_info: Association-specific information for the domain (French extension).
632
+ :param 'RegistrationAdministrativeContactExtensionFrCodeAuthAfnicInfoArgs' code_auth_afnic_info: AFNIC authorization information for the contact (French extension).
633
+ :param 'RegistrationAdministrativeContactExtensionFrDunsInfoArgs' duns_info: DUNS information for the domain owner (specific to French domains).
634
+ :param 'RegistrationAdministrativeContactExtensionFrIndividualInfoArgs' individual_info: Information about the individual registration for French domains.
635
+ :param str mode: Mode of the French extension (e.g., 'individual', 'duns', 'association', etc.).
636
+ :param 'RegistrationAdministrativeContactExtensionFrTrademarkInfoArgs' trademark_info: Trademark-related information for the domain (French extension).
637
+ """
638
+ if association_info is not None:
639
+ pulumi.set(__self__, "association_info", association_info)
640
+ if code_auth_afnic_info is not None:
641
+ pulumi.set(__self__, "code_auth_afnic_info", code_auth_afnic_info)
642
+ if duns_info is not None:
643
+ pulumi.set(__self__, "duns_info", duns_info)
644
+ if individual_info is not None:
645
+ pulumi.set(__self__, "individual_info", individual_info)
646
+ if mode is not None:
647
+ pulumi.set(__self__, "mode", mode)
648
+ if trademark_info is not None:
649
+ pulumi.set(__self__, "trademark_info", trademark_info)
650
+
651
+ @property
652
+ @pulumi.getter(name="associationInfo")
653
+ def association_info(self) -> Optional['outputs.RegistrationAdministrativeContactExtensionFrAssociationInfo']:
654
+ """
655
+ Association-specific information for the domain (French extension).
656
+ """
657
+ return pulumi.get(self, "association_info")
658
+
659
+ @property
660
+ @pulumi.getter(name="codeAuthAfnicInfo")
661
+ def code_auth_afnic_info(self) -> Optional['outputs.RegistrationAdministrativeContactExtensionFrCodeAuthAfnicInfo']:
662
+ """
663
+ AFNIC authorization information for the contact (French extension).
664
+ """
665
+ return pulumi.get(self, "code_auth_afnic_info")
666
+
667
+ @property
668
+ @pulumi.getter(name="dunsInfo")
669
+ def duns_info(self) -> Optional['outputs.RegistrationAdministrativeContactExtensionFrDunsInfo']:
670
+ """
671
+ DUNS information for the domain owner (specific to French domains).
672
+ """
673
+ return pulumi.get(self, "duns_info")
674
+
675
+ @property
676
+ @pulumi.getter(name="individualInfo")
677
+ def individual_info(self) -> Optional['outputs.RegistrationAdministrativeContactExtensionFrIndividualInfo']:
678
+ """
679
+ Information about the individual registration for French domains.
680
+ """
681
+ return pulumi.get(self, "individual_info")
682
+
683
+ @property
684
+ @pulumi.getter
685
+ def mode(self) -> Optional[str]:
686
+ """
687
+ Mode of the French extension (e.g., 'individual', 'duns', 'association', etc.).
688
+ """
689
+ return pulumi.get(self, "mode")
690
+
691
+ @property
692
+ @pulumi.getter(name="trademarkInfo")
693
+ def trademark_info(self) -> Optional['outputs.RegistrationAdministrativeContactExtensionFrTrademarkInfo']:
694
+ """
695
+ Trademark-related information for the domain (French extension).
696
+ """
697
+ return pulumi.get(self, "trademark_info")
698
+
699
+
700
+ @pulumi.output_type
701
+ class RegistrationAdministrativeContactExtensionFrAssociationInfo(dict):
702
+ @staticmethod
703
+ def __key_warning(key: str):
704
+ suggest = None
705
+ if key == "publicationJo":
706
+ suggest = "publication_jo"
707
+ elif key == "publicationJoPage":
708
+ suggest = "publication_jo_page"
709
+
710
+ if suggest:
711
+ pulumi.log.warn(f"Key '{key}' not found in RegistrationAdministrativeContactExtensionFrAssociationInfo. Access the value via the '{suggest}' property getter instead.")
712
+
713
+ def __getitem__(self, key: str) -> Any:
714
+ RegistrationAdministrativeContactExtensionFrAssociationInfo.__key_warning(key)
715
+ return super().__getitem__(key)
716
+
717
+ def get(self, key: str, default = None) -> Any:
718
+ RegistrationAdministrativeContactExtensionFrAssociationInfo.__key_warning(key)
719
+ return super().get(key, default)
720
+
721
+ def __init__(__self__, *,
722
+ publication_jo: Optional[str] = None,
723
+ publication_jo_page: Optional[int] = None):
724
+ """
725
+ :param str publication_jo: Publication date in the Official Journal (RFC3339 format) for association information.
726
+ :param int publication_jo_page: Page number of the publication in the Official Journal for association information.
727
+ """
728
+ if publication_jo is not None:
729
+ pulumi.set(__self__, "publication_jo", publication_jo)
730
+ if publication_jo_page is not None:
731
+ pulumi.set(__self__, "publication_jo_page", publication_jo_page)
732
+
733
+ @property
734
+ @pulumi.getter(name="publicationJo")
735
+ def publication_jo(self) -> Optional[str]:
736
+ """
737
+ Publication date in the Official Journal (RFC3339 format) for association information.
738
+ """
739
+ return pulumi.get(self, "publication_jo")
740
+
741
+ @property
742
+ @pulumi.getter(name="publicationJoPage")
743
+ def publication_jo_page(self) -> Optional[int]:
744
+ """
745
+ Page number of the publication in the Official Journal for association information.
746
+ """
747
+ return pulumi.get(self, "publication_jo_page")
748
+
749
+
750
+ @pulumi.output_type
751
+ class RegistrationAdministrativeContactExtensionFrCodeAuthAfnicInfo(dict):
752
+ @staticmethod
753
+ def __key_warning(key: str):
754
+ suggest = None
755
+ if key == "codeAuthAfnic":
756
+ suggest = "code_auth_afnic"
757
+
758
+ if suggest:
759
+ pulumi.log.warn(f"Key '{key}' not found in RegistrationAdministrativeContactExtensionFrCodeAuthAfnicInfo. Access the value via the '{suggest}' property getter instead.")
760
+
761
+ def __getitem__(self, key: str) -> Any:
762
+ RegistrationAdministrativeContactExtensionFrCodeAuthAfnicInfo.__key_warning(key)
763
+ return super().__getitem__(key)
764
+
765
+ def get(self, key: str, default = None) -> Any:
766
+ RegistrationAdministrativeContactExtensionFrCodeAuthAfnicInfo.__key_warning(key)
767
+ return super().get(key, default)
768
+
769
+ def __init__(__self__, *,
770
+ code_auth_afnic: Optional[str] = None):
771
+ """
772
+ :param str code_auth_afnic: AFNIC authorization code for the contact (specific to French domains).
773
+ """
774
+ if code_auth_afnic is not None:
775
+ pulumi.set(__self__, "code_auth_afnic", code_auth_afnic)
776
+
777
+ @property
778
+ @pulumi.getter(name="codeAuthAfnic")
779
+ def code_auth_afnic(self) -> Optional[str]:
780
+ """
781
+ AFNIC authorization code for the contact (specific to French domains).
782
+ """
783
+ return pulumi.get(self, "code_auth_afnic")
784
+
785
+
786
+ @pulumi.output_type
787
+ class RegistrationAdministrativeContactExtensionFrDunsInfo(dict):
788
+ @staticmethod
789
+ def __key_warning(key: str):
790
+ suggest = None
791
+ if key == "dunsId":
792
+ suggest = "duns_id"
793
+ elif key == "localId":
794
+ suggest = "local_id"
795
+
796
+ if suggest:
797
+ pulumi.log.warn(f"Key '{key}' not found in RegistrationAdministrativeContactExtensionFrDunsInfo. Access the value via the '{suggest}' property getter instead.")
798
+
799
+ def __getitem__(self, key: str) -> Any:
800
+ RegistrationAdministrativeContactExtensionFrDunsInfo.__key_warning(key)
801
+ return super().__getitem__(key)
802
+
803
+ def get(self, key: str, default = None) -> Any:
804
+ RegistrationAdministrativeContactExtensionFrDunsInfo.__key_warning(key)
805
+ return super().get(key, default)
806
+
807
+ def __init__(__self__, *,
808
+ duns_id: Optional[str] = None,
809
+ local_id: Optional[str] = None):
810
+ """
811
+ :param str duns_id: DUNS ID associated with the domain owner (for French domains).
812
+ :param str local_id: Local identifier of the domain owner (for French domains).
813
+ """
814
+ if duns_id is not None:
815
+ pulumi.set(__self__, "duns_id", duns_id)
816
+ if local_id is not None:
817
+ pulumi.set(__self__, "local_id", local_id)
818
+
819
+ @property
820
+ @pulumi.getter(name="dunsId")
821
+ def duns_id(self) -> Optional[str]:
822
+ """
823
+ DUNS ID associated with the domain owner (for French domains).
824
+ """
825
+ return pulumi.get(self, "duns_id")
826
+
827
+ @property
828
+ @pulumi.getter(name="localId")
829
+ def local_id(self) -> Optional[str]:
830
+ """
831
+ Local identifier of the domain owner (for French domains).
832
+ """
833
+ return pulumi.get(self, "local_id")
834
+
835
+
836
+ @pulumi.output_type
837
+ class RegistrationAdministrativeContactExtensionFrIndividualInfo(dict):
838
+ @staticmethod
839
+ def __key_warning(key: str):
840
+ suggest = None
841
+ if key == "whoisOptIn":
842
+ suggest = "whois_opt_in"
843
+
844
+ if suggest:
845
+ pulumi.log.warn(f"Key '{key}' not found in RegistrationAdministrativeContactExtensionFrIndividualInfo. Access the value via the '{suggest}' property getter instead.")
846
+
847
+ def __getitem__(self, key: str) -> Any:
848
+ RegistrationAdministrativeContactExtensionFrIndividualInfo.__key_warning(key)
849
+ return super().__getitem__(key)
850
+
851
+ def get(self, key: str, default = None) -> Any:
852
+ RegistrationAdministrativeContactExtensionFrIndividualInfo.__key_warning(key)
853
+ return super().get(key, default)
854
+
855
+ def __init__(__self__, *,
856
+ whois_opt_in: Optional[bool] = None):
857
+ """
858
+ :param bool whois_opt_in: Whether the individual contact has opted into WHOIS publishing.
859
+ """
860
+ if whois_opt_in is not None:
861
+ pulumi.set(__self__, "whois_opt_in", whois_opt_in)
862
+
863
+ @property
864
+ @pulumi.getter(name="whoisOptIn")
865
+ def whois_opt_in(self) -> Optional[bool]:
866
+ """
867
+ Whether the individual contact has opted into WHOIS publishing.
868
+ """
869
+ return pulumi.get(self, "whois_opt_in")
870
+
871
+
872
+ @pulumi.output_type
873
+ class RegistrationAdministrativeContactExtensionFrTrademarkInfo(dict):
874
+ @staticmethod
875
+ def __key_warning(key: str):
876
+ suggest = None
877
+ if key == "trademarkInpi":
878
+ suggest = "trademark_inpi"
879
+
880
+ if suggest:
881
+ pulumi.log.warn(f"Key '{key}' not found in RegistrationAdministrativeContactExtensionFrTrademarkInfo. Access the value via the '{suggest}' property getter instead.")
882
+
883
+ def __getitem__(self, key: str) -> Any:
884
+ RegistrationAdministrativeContactExtensionFrTrademarkInfo.__key_warning(key)
885
+ return super().__getitem__(key)
886
+
887
+ def get(self, key: str, default = None) -> Any:
888
+ RegistrationAdministrativeContactExtensionFrTrademarkInfo.__key_warning(key)
889
+ return super().get(key, default)
890
+
891
+ def __init__(__self__, *,
892
+ trademark_inpi: Optional[str] = None):
893
+ """
894
+ :param str trademark_inpi: Trademark information from INPI (French extension).
895
+ """
896
+ if trademark_inpi is not None:
897
+ pulumi.set(__self__, "trademark_inpi", trademark_inpi)
898
+
899
+ @property
900
+ @pulumi.getter(name="trademarkInpi")
901
+ def trademark_inpi(self) -> Optional[str]:
902
+ """
903
+ Trademark information from INPI (French extension).
904
+ """
905
+ return pulumi.get(self, "trademark_inpi")
906
+
907
+
908
+ @pulumi.output_type
909
+ class RegistrationDsRecord(dict):
910
+ @staticmethod
911
+ def __key_warning(key: str):
912
+ suggest = None
913
+ if key == "keyId":
914
+ suggest = "key_id"
915
+ elif key == "publicKeys":
916
+ suggest = "public_keys"
917
+
918
+ if suggest:
919
+ pulumi.log.warn(f"Key '{key}' not found in RegistrationDsRecord. Access the value via the '{suggest}' property getter instead.")
920
+
921
+ def __getitem__(self, key: str) -> Any:
922
+ RegistrationDsRecord.__key_warning(key)
923
+ return super().__getitem__(key)
924
+
925
+ def get(self, key: str, default = None) -> Any:
926
+ RegistrationDsRecord.__key_warning(key)
927
+ return super().get(key, default)
928
+
929
+ def __init__(__self__, *,
930
+ algorithm: Optional[str] = None,
931
+ digests: Optional[Sequence['outputs.RegistrationDsRecordDigest']] = None,
932
+ key_id: Optional[int] = None,
933
+ public_keys: Optional[Sequence['outputs.RegistrationDsRecordPublicKey']] = None):
934
+ """
935
+ :param str algorithm: The algorithm used for dnssec (e.g., rsasha256, ecdsap256sha256).
936
+ :param Sequence['RegistrationDsRecordDigestArgs'] digests: Details about the digest.
937
+ :param int key_id: The identifier for the dnssec key.
938
+ :param Sequence['RegistrationDsRecordPublicKeyArgs'] public_keys: Public key associated with the dnssec record.
939
+ """
940
+ if algorithm is not None:
941
+ pulumi.set(__self__, "algorithm", algorithm)
942
+ if digests is not None:
943
+ pulumi.set(__self__, "digests", digests)
944
+ if key_id is not None:
945
+ pulumi.set(__self__, "key_id", key_id)
946
+ if public_keys is not None:
947
+ pulumi.set(__self__, "public_keys", public_keys)
948
+
949
+ @property
950
+ @pulumi.getter
951
+ def algorithm(self) -> Optional[str]:
952
+ """
953
+ The algorithm used for dnssec (e.g., rsasha256, ecdsap256sha256).
954
+ """
955
+ return pulumi.get(self, "algorithm")
956
+
957
+ @property
958
+ @pulumi.getter
959
+ def digests(self) -> Optional[Sequence['outputs.RegistrationDsRecordDigest']]:
960
+ """
961
+ Details about the digest.
962
+ """
963
+ return pulumi.get(self, "digests")
964
+
965
+ @property
966
+ @pulumi.getter(name="keyId")
967
+ def key_id(self) -> Optional[int]:
968
+ """
969
+ The identifier for the dnssec key.
970
+ """
971
+ return pulumi.get(self, "key_id")
972
+
973
+ @property
974
+ @pulumi.getter(name="publicKeys")
975
+ def public_keys(self) -> Optional[Sequence['outputs.RegistrationDsRecordPublicKey']]:
976
+ """
977
+ Public key associated with the dnssec record.
978
+ """
979
+ return pulumi.get(self, "public_keys")
980
+
981
+
982
+ @pulumi.output_type
983
+ class RegistrationDsRecordDigest(dict):
984
+ @staticmethod
985
+ def __key_warning(key: str):
986
+ suggest = None
987
+ if key == "publicKeys":
988
+ suggest = "public_keys"
989
+
990
+ if suggest:
991
+ pulumi.log.warn(f"Key '{key}' not found in RegistrationDsRecordDigest. Access the value via the '{suggest}' property getter instead.")
992
+
993
+ def __getitem__(self, key: str) -> Any:
994
+ RegistrationDsRecordDigest.__key_warning(key)
995
+ return super().__getitem__(key)
996
+
997
+ def get(self, key: str, default = None) -> Any:
998
+ RegistrationDsRecordDigest.__key_warning(key)
999
+ return super().get(key, default)
1000
+
1001
+ def __init__(__self__, *,
1002
+ digest: Optional[str] = None,
1003
+ public_keys: Optional[Sequence['outputs.RegistrationDsRecordDigestPublicKey']] = None,
1004
+ type: Optional[str] = None):
1005
+ """
1006
+ :param str digest: The digest value.
1007
+ :param Sequence['RegistrationDsRecordDigestPublicKeyArgs'] public_keys: The public key associated with the digest.
1008
+ :param str type: The digest type for the DS record (e.g., sha_1, sha_256, gost_r_34_11_94, sha_384).
1009
+ """
1010
+ if digest is not None:
1011
+ pulumi.set(__self__, "digest", digest)
1012
+ if public_keys is not None:
1013
+ pulumi.set(__self__, "public_keys", public_keys)
1014
+ if type is not None:
1015
+ pulumi.set(__self__, "type", type)
1016
+
1017
+ @property
1018
+ @pulumi.getter
1019
+ def digest(self) -> Optional[str]:
1020
+ """
1021
+ The digest value.
1022
+ """
1023
+ return pulumi.get(self, "digest")
1024
+
1025
+ @property
1026
+ @pulumi.getter(name="publicKeys")
1027
+ def public_keys(self) -> Optional[Sequence['outputs.RegistrationDsRecordDigestPublicKey']]:
1028
+ """
1029
+ The public key associated with the digest.
1030
+ """
1031
+ return pulumi.get(self, "public_keys")
1032
+
1033
+ @property
1034
+ @pulumi.getter
1035
+ def type(self) -> Optional[str]:
1036
+ """
1037
+ The digest type for the DS record (e.g., sha_1, sha_256, gost_r_34_11_94, sha_384).
1038
+ """
1039
+ return pulumi.get(self, "type")
1040
+
1041
+
1042
+ @pulumi.output_type
1043
+ class RegistrationDsRecordDigestPublicKey(dict):
1044
+ def __init__(__self__, *,
1045
+ key: str):
1046
+ """
1047
+ :param str key: The public key value.
1048
+ """
1049
+ pulumi.set(__self__, "key", key)
1050
+
1051
+ @property
1052
+ @pulumi.getter
1053
+ def key(self) -> str:
1054
+ """
1055
+ The public key value.
1056
+ """
1057
+ return pulumi.get(self, "key")
1058
+
1059
+
1060
+ @pulumi.output_type
1061
+ class RegistrationDsRecordPublicKey(dict):
1062
+ def __init__(__self__, *,
1063
+ key: str):
1064
+ """
1065
+ :param str key: The public key value.
1066
+ """
1067
+ pulumi.set(__self__, "key", key)
1068
+
1069
+ @property
1070
+ @pulumi.getter
1071
+ def key(self) -> str:
1072
+ """
1073
+ The public key value.
1074
+ """
1075
+ return pulumi.get(self, "key")
1076
+
1077
+
1078
+ @pulumi.output_type
1079
+ class RegistrationOwnerContact(dict):
1080
+ @staticmethod
1081
+ def __key_warning(key: str):
1082
+ suggest = None
1083
+ if key == "addressLine1":
1084
+ suggest = "address_line1"
1085
+ elif key == "companyIdentificationCode":
1086
+ suggest = "company_identification_code"
1087
+ elif key == "legalForm":
1088
+ suggest = "legal_form"
1089
+ elif key == "phoneNumber":
1090
+ suggest = "phone_number"
1091
+ elif key == "vatIdentificationCode":
1092
+ suggest = "vat_identification_code"
1093
+ elif key == "addressLine2":
1094
+ suggest = "address_line2"
1095
+ elif key == "companyName":
1096
+ suggest = "company_name"
1097
+ elif key == "emailAlt":
1098
+ suggest = "email_alt"
1099
+ elif key == "extensionEu":
1100
+ suggest = "extension_eu"
1101
+ elif key == "extensionFr":
1102
+ suggest = "extension_fr"
1103
+ elif key == "extensionNls":
1104
+ suggest = "extension_nls"
1105
+ elif key == "faxNumber":
1106
+ suggest = "fax_number"
1107
+ elif key == "whoisOptIn":
1108
+ suggest = "whois_opt_in"
1109
+
1110
+ if suggest:
1111
+ pulumi.log.warn(f"Key '{key}' not found in RegistrationOwnerContact. Access the value via the '{suggest}' property getter instead.")
1112
+
1113
+ def __getitem__(self, key: str) -> Any:
1114
+ RegistrationOwnerContact.__key_warning(key)
1115
+ return super().__getitem__(key)
1116
+
1117
+ def get(self, key: str, default = None) -> Any:
1118
+ RegistrationOwnerContact.__key_warning(key)
1119
+ return super().get(key, default)
1120
+
1121
+ def __init__(__self__, *,
1122
+ address_line1: str,
1123
+ city: str,
1124
+ company_identification_code: str,
1125
+ country: str,
1126
+ email: str,
1127
+ firstname: str,
1128
+ lastname: str,
1129
+ legal_form: str,
1130
+ phone_number: str,
1131
+ vat_identification_code: str,
1132
+ zip: str,
1133
+ address_line2: Optional[str] = None,
1134
+ company_name: Optional[str] = None,
1135
+ email_alt: Optional[str] = None,
1136
+ extension_eu: Optional['outputs.RegistrationOwnerContactExtensionEu'] = None,
1137
+ extension_fr: Optional['outputs.RegistrationOwnerContactExtensionFr'] = None,
1138
+ extension_nls: Optional[Sequence[str]] = None,
1139
+ fax_number: Optional[str] = None,
1140
+ lang: Optional[str] = None,
1141
+ resale: Optional[bool] = None,
1142
+ state: Optional[str] = None,
1143
+ whois_opt_in: Optional[bool] = None):
1144
+ """
1145
+ :param str address_line1: Primary address line for the contact.
1146
+ :param str city: City of the contact's address.
1147
+ :param str company_identification_code: Company identification code (e.g., SIREN/SIRET in France) for the contact.
1148
+ :param str country: Country code of the contact's address (ISO format).
1149
+ :param str email: Primary email address of the contact.
1150
+ :param str firstname: First name of the contact.
1151
+ :param str lastname: Last name of the contact.
1152
+ :param str legal_form: Legal form of the contact (e.g., 'individual' or 'organization').
1153
+ :param str phone_number: Primary phone number of the contact.
1154
+ :param str vat_identification_code: VAT identification code of the contact, if applicable.
1155
+ :param str zip: Postal code of the contact's address.
1156
+ :param str address_line2: Secondary address line for the contact (optional).
1157
+ :param str company_name: Name of the company associated with the contact (if applicable).
1158
+ :param str email_alt: Alternative email address for the contact.
1159
+ :param 'RegistrationOwnerContactExtensionEuArgs' extension_eu: Details specific to European domain extensions.
1160
+ :param 'RegistrationOwnerContactExtensionFrArgs' extension_fr: Details specific to French domain extensions.
1161
+ :param Sequence[str] extension_nls: Extension details specific to Dutch domain registrations.
1162
+ :param str fax_number: Fax number for the contact (if available).
1163
+ :param str lang: Preferred language of the contact (e.g., 'en_US', 'fr_FR').
1164
+ :param bool resale: Indicates if the contact is used for resale purposes.
1165
+ :param str state: State or region of the contact.
1166
+ :param bool whois_opt_in: Indicates whether the contact has opted into WHOIS publishing.
1167
+ """
1168
+ pulumi.set(__self__, "address_line1", address_line1)
1169
+ pulumi.set(__self__, "city", city)
1170
+ pulumi.set(__self__, "company_identification_code", company_identification_code)
1171
+ pulumi.set(__self__, "country", country)
1172
+ pulumi.set(__self__, "email", email)
1173
+ pulumi.set(__self__, "firstname", firstname)
1174
+ pulumi.set(__self__, "lastname", lastname)
1175
+ pulumi.set(__self__, "legal_form", legal_form)
1176
+ pulumi.set(__self__, "phone_number", phone_number)
1177
+ pulumi.set(__self__, "vat_identification_code", vat_identification_code)
1178
+ pulumi.set(__self__, "zip", zip)
1179
+ if address_line2 is not None:
1180
+ pulumi.set(__self__, "address_line2", address_line2)
1181
+ if company_name is not None:
1182
+ pulumi.set(__self__, "company_name", company_name)
1183
+ if email_alt is not None:
1184
+ pulumi.set(__self__, "email_alt", email_alt)
1185
+ if extension_eu is not None:
1186
+ pulumi.set(__self__, "extension_eu", extension_eu)
1187
+ if extension_fr is not None:
1188
+ pulumi.set(__self__, "extension_fr", extension_fr)
1189
+ if extension_nls is not None:
1190
+ pulumi.set(__self__, "extension_nls", extension_nls)
1191
+ if fax_number is not None:
1192
+ pulumi.set(__self__, "fax_number", fax_number)
1193
+ if lang is not None:
1194
+ pulumi.set(__self__, "lang", lang)
1195
+ if resale is not None:
1196
+ pulumi.set(__self__, "resale", resale)
1197
+ if state is not None:
1198
+ pulumi.set(__self__, "state", state)
1199
+ if whois_opt_in is not None:
1200
+ pulumi.set(__self__, "whois_opt_in", whois_opt_in)
1201
+
1202
+ @property
1203
+ @pulumi.getter(name="addressLine1")
1204
+ def address_line1(self) -> str:
1205
+ """
1206
+ Primary address line for the contact.
1207
+ """
1208
+ return pulumi.get(self, "address_line1")
1209
+
1210
+ @property
1211
+ @pulumi.getter
1212
+ def city(self) -> str:
1213
+ """
1214
+ City of the contact's address.
1215
+ """
1216
+ return pulumi.get(self, "city")
1217
+
1218
+ @property
1219
+ @pulumi.getter(name="companyIdentificationCode")
1220
+ def company_identification_code(self) -> str:
1221
+ """
1222
+ Company identification code (e.g., SIREN/SIRET in France) for the contact.
1223
+ """
1224
+ return pulumi.get(self, "company_identification_code")
1225
+
1226
+ @property
1227
+ @pulumi.getter
1228
+ def country(self) -> str:
1229
+ """
1230
+ Country code of the contact's address (ISO format).
1231
+ """
1232
+ return pulumi.get(self, "country")
1233
+
1234
+ @property
1235
+ @pulumi.getter
1236
+ def email(self) -> str:
1237
+ """
1238
+ Primary email address of the contact.
1239
+ """
1240
+ return pulumi.get(self, "email")
1241
+
1242
+ @property
1243
+ @pulumi.getter
1244
+ def firstname(self) -> str:
1245
+ """
1246
+ First name of the contact.
1247
+ """
1248
+ return pulumi.get(self, "firstname")
1249
+
1250
+ @property
1251
+ @pulumi.getter
1252
+ def lastname(self) -> str:
1253
+ """
1254
+ Last name of the contact.
1255
+ """
1256
+ return pulumi.get(self, "lastname")
1257
+
1258
+ @property
1259
+ @pulumi.getter(name="legalForm")
1260
+ def legal_form(self) -> str:
1261
+ """
1262
+ Legal form of the contact (e.g., 'individual' or 'organization').
1263
+ """
1264
+ return pulumi.get(self, "legal_form")
1265
+
1266
+ @property
1267
+ @pulumi.getter(name="phoneNumber")
1268
+ def phone_number(self) -> str:
1269
+ """
1270
+ Primary phone number of the contact.
1271
+ """
1272
+ return pulumi.get(self, "phone_number")
1273
+
1274
+ @property
1275
+ @pulumi.getter(name="vatIdentificationCode")
1276
+ def vat_identification_code(self) -> str:
1277
+ """
1278
+ VAT identification code of the contact, if applicable.
1279
+ """
1280
+ return pulumi.get(self, "vat_identification_code")
1281
+
1282
+ @property
1283
+ @pulumi.getter
1284
+ def zip(self) -> str:
1285
+ """
1286
+ Postal code of the contact's address.
1287
+ """
1288
+ return pulumi.get(self, "zip")
1289
+
1290
+ @property
1291
+ @pulumi.getter(name="addressLine2")
1292
+ def address_line2(self) -> Optional[str]:
1293
+ """
1294
+ Secondary address line for the contact (optional).
1295
+ """
1296
+ return pulumi.get(self, "address_line2")
1297
+
1298
+ @property
1299
+ @pulumi.getter(name="companyName")
1300
+ def company_name(self) -> Optional[str]:
1301
+ """
1302
+ Name of the company associated with the contact (if applicable).
1303
+ """
1304
+ return pulumi.get(self, "company_name")
1305
+
1306
+ @property
1307
+ @pulumi.getter(name="emailAlt")
1308
+ def email_alt(self) -> Optional[str]:
1309
+ """
1310
+ Alternative email address for the contact.
1311
+ """
1312
+ return pulumi.get(self, "email_alt")
1313
+
1314
+ @property
1315
+ @pulumi.getter(name="extensionEu")
1316
+ def extension_eu(self) -> Optional['outputs.RegistrationOwnerContactExtensionEu']:
1317
+ """
1318
+ Details specific to European domain extensions.
1319
+ """
1320
+ return pulumi.get(self, "extension_eu")
1321
+
1322
+ @property
1323
+ @pulumi.getter(name="extensionFr")
1324
+ def extension_fr(self) -> Optional['outputs.RegistrationOwnerContactExtensionFr']:
1325
+ """
1326
+ Details specific to French domain extensions.
1327
+ """
1328
+ return pulumi.get(self, "extension_fr")
1329
+
1330
+ @property
1331
+ @pulumi.getter(name="extensionNls")
1332
+ def extension_nls(self) -> Optional[Sequence[str]]:
1333
+ """
1334
+ Extension details specific to Dutch domain registrations.
1335
+ """
1336
+ return pulumi.get(self, "extension_nls")
1337
+
1338
+ @property
1339
+ @pulumi.getter(name="faxNumber")
1340
+ def fax_number(self) -> Optional[str]:
1341
+ """
1342
+ Fax number for the contact (if available).
1343
+ """
1344
+ return pulumi.get(self, "fax_number")
1345
+
1346
+ @property
1347
+ @pulumi.getter
1348
+ def lang(self) -> Optional[str]:
1349
+ """
1350
+ Preferred language of the contact (e.g., 'en_US', 'fr_FR').
1351
+ """
1352
+ return pulumi.get(self, "lang")
1353
+
1354
+ @property
1355
+ @pulumi.getter
1356
+ def resale(self) -> Optional[bool]:
1357
+ """
1358
+ Indicates if the contact is used for resale purposes.
1359
+ """
1360
+ return pulumi.get(self, "resale")
1361
+
1362
+ @property
1363
+ @pulumi.getter
1364
+ def state(self) -> Optional[str]:
1365
+ """
1366
+ State or region of the contact.
1367
+ """
1368
+ return pulumi.get(self, "state")
1369
+
1370
+ @property
1371
+ @pulumi.getter(name="whoisOptIn")
1372
+ def whois_opt_in(self) -> Optional[bool]:
1373
+ """
1374
+ Indicates whether the contact has opted into WHOIS publishing.
1375
+ """
1376
+ return pulumi.get(self, "whois_opt_in")
1377
+
1378
+
1379
+ @pulumi.output_type
1380
+ class RegistrationOwnerContactExtensionEu(dict):
1381
+ @staticmethod
1382
+ def __key_warning(key: str):
1383
+ suggest = None
1384
+ if key == "europeanCitizenship":
1385
+ suggest = "european_citizenship"
1386
+
1387
+ if suggest:
1388
+ pulumi.log.warn(f"Key '{key}' not found in RegistrationOwnerContactExtensionEu. Access the value via the '{suggest}' property getter instead.")
1389
+
1390
+ def __getitem__(self, key: str) -> Any:
1391
+ RegistrationOwnerContactExtensionEu.__key_warning(key)
1392
+ return super().__getitem__(key)
1393
+
1394
+ def get(self, key: str, default = None) -> Any:
1395
+ RegistrationOwnerContactExtensionEu.__key_warning(key)
1396
+ return super().get(key, default)
1397
+
1398
+ def __init__(__self__, *,
1399
+ european_citizenship: Optional[str] = None):
1400
+ """
1401
+ :param str european_citizenship: Indicates the European citizenship of the contact.
1402
+ """
1403
+ if european_citizenship is not None:
1404
+ pulumi.set(__self__, "european_citizenship", european_citizenship)
1405
+
1406
+ @property
1407
+ @pulumi.getter(name="europeanCitizenship")
1408
+ def european_citizenship(self) -> Optional[str]:
1409
+ """
1410
+ Indicates the European citizenship of the contact.
1411
+ """
1412
+ return pulumi.get(self, "european_citizenship")
1413
+
1414
+
1415
+ @pulumi.output_type
1416
+ class RegistrationOwnerContactExtensionFr(dict):
1417
+ @staticmethod
1418
+ def __key_warning(key: str):
1419
+ suggest = None
1420
+ if key == "associationInfo":
1421
+ suggest = "association_info"
1422
+ elif key == "codeAuthAfnicInfo":
1423
+ suggest = "code_auth_afnic_info"
1424
+ elif key == "dunsInfo":
1425
+ suggest = "duns_info"
1426
+ elif key == "individualInfo":
1427
+ suggest = "individual_info"
1428
+ elif key == "trademarkInfo":
1429
+ suggest = "trademark_info"
1430
+
1431
+ if suggest:
1432
+ pulumi.log.warn(f"Key '{key}' not found in RegistrationOwnerContactExtensionFr. Access the value via the '{suggest}' property getter instead.")
1433
+
1434
+ def __getitem__(self, key: str) -> Any:
1435
+ RegistrationOwnerContactExtensionFr.__key_warning(key)
1436
+ return super().__getitem__(key)
1437
+
1438
+ def get(self, key: str, default = None) -> Any:
1439
+ RegistrationOwnerContactExtensionFr.__key_warning(key)
1440
+ return super().get(key, default)
1441
+
1442
+ def __init__(__self__, *,
1443
+ association_info: Optional['outputs.RegistrationOwnerContactExtensionFrAssociationInfo'] = None,
1444
+ code_auth_afnic_info: Optional['outputs.RegistrationOwnerContactExtensionFrCodeAuthAfnicInfo'] = None,
1445
+ duns_info: Optional['outputs.RegistrationOwnerContactExtensionFrDunsInfo'] = None,
1446
+ individual_info: Optional['outputs.RegistrationOwnerContactExtensionFrIndividualInfo'] = None,
1447
+ mode: Optional[str] = None,
1448
+ trademark_info: Optional['outputs.RegistrationOwnerContactExtensionFrTrademarkInfo'] = None):
1449
+ """
1450
+ :param 'RegistrationOwnerContactExtensionFrAssociationInfoArgs' association_info: Association-specific information for the domain (French extension).
1451
+ :param 'RegistrationOwnerContactExtensionFrCodeAuthAfnicInfoArgs' code_auth_afnic_info: AFNIC authorization information for the contact (French extension).
1452
+ :param 'RegistrationOwnerContactExtensionFrDunsInfoArgs' duns_info: DUNS information for the domain owner (specific to French domains).
1453
+ :param 'RegistrationOwnerContactExtensionFrIndividualInfoArgs' individual_info: Information about the individual registration for French domains.
1454
+ :param str mode: Mode of the French extension (e.g., 'individual', 'duns', 'association', etc.).
1455
+ :param 'RegistrationOwnerContactExtensionFrTrademarkInfoArgs' trademark_info: Trademark-related information for the domain (French extension).
1456
+ """
1457
+ if association_info is not None:
1458
+ pulumi.set(__self__, "association_info", association_info)
1459
+ if code_auth_afnic_info is not None:
1460
+ pulumi.set(__self__, "code_auth_afnic_info", code_auth_afnic_info)
1461
+ if duns_info is not None:
1462
+ pulumi.set(__self__, "duns_info", duns_info)
1463
+ if individual_info is not None:
1464
+ pulumi.set(__self__, "individual_info", individual_info)
1465
+ if mode is not None:
1466
+ pulumi.set(__self__, "mode", mode)
1467
+ if trademark_info is not None:
1468
+ pulumi.set(__self__, "trademark_info", trademark_info)
1469
+
1470
+ @property
1471
+ @pulumi.getter(name="associationInfo")
1472
+ def association_info(self) -> Optional['outputs.RegistrationOwnerContactExtensionFrAssociationInfo']:
1473
+ """
1474
+ Association-specific information for the domain (French extension).
1475
+ """
1476
+ return pulumi.get(self, "association_info")
1477
+
1478
+ @property
1479
+ @pulumi.getter(name="codeAuthAfnicInfo")
1480
+ def code_auth_afnic_info(self) -> Optional['outputs.RegistrationOwnerContactExtensionFrCodeAuthAfnicInfo']:
1481
+ """
1482
+ AFNIC authorization information for the contact (French extension).
1483
+ """
1484
+ return pulumi.get(self, "code_auth_afnic_info")
1485
+
1486
+ @property
1487
+ @pulumi.getter(name="dunsInfo")
1488
+ def duns_info(self) -> Optional['outputs.RegistrationOwnerContactExtensionFrDunsInfo']:
1489
+ """
1490
+ DUNS information for the domain owner (specific to French domains).
1491
+ """
1492
+ return pulumi.get(self, "duns_info")
1493
+
1494
+ @property
1495
+ @pulumi.getter(name="individualInfo")
1496
+ def individual_info(self) -> Optional['outputs.RegistrationOwnerContactExtensionFrIndividualInfo']:
1497
+ """
1498
+ Information about the individual registration for French domains.
1499
+ """
1500
+ return pulumi.get(self, "individual_info")
1501
+
1502
+ @property
1503
+ @pulumi.getter
1504
+ def mode(self) -> Optional[str]:
1505
+ """
1506
+ Mode of the French extension (e.g., 'individual', 'duns', 'association', etc.).
1507
+ """
1508
+ return pulumi.get(self, "mode")
1509
+
1510
+ @property
1511
+ @pulumi.getter(name="trademarkInfo")
1512
+ def trademark_info(self) -> Optional['outputs.RegistrationOwnerContactExtensionFrTrademarkInfo']:
1513
+ """
1514
+ Trademark-related information for the domain (French extension).
1515
+ """
1516
+ return pulumi.get(self, "trademark_info")
1517
+
1518
+
1519
+ @pulumi.output_type
1520
+ class RegistrationOwnerContactExtensionFrAssociationInfo(dict):
1521
+ @staticmethod
1522
+ def __key_warning(key: str):
1523
+ suggest = None
1524
+ if key == "publicationJo":
1525
+ suggest = "publication_jo"
1526
+ elif key == "publicationJoPage":
1527
+ suggest = "publication_jo_page"
1528
+
1529
+ if suggest:
1530
+ pulumi.log.warn(f"Key '{key}' not found in RegistrationOwnerContactExtensionFrAssociationInfo. Access the value via the '{suggest}' property getter instead.")
1531
+
1532
+ def __getitem__(self, key: str) -> Any:
1533
+ RegistrationOwnerContactExtensionFrAssociationInfo.__key_warning(key)
1534
+ return super().__getitem__(key)
1535
+
1536
+ def get(self, key: str, default = None) -> Any:
1537
+ RegistrationOwnerContactExtensionFrAssociationInfo.__key_warning(key)
1538
+ return super().get(key, default)
1539
+
1540
+ def __init__(__self__, *,
1541
+ publication_jo: Optional[str] = None,
1542
+ publication_jo_page: Optional[int] = None):
1543
+ """
1544
+ :param str publication_jo: Publication date in the Official Journal (RFC3339 format) for association information.
1545
+ :param int publication_jo_page: Page number of the publication in the Official Journal for association information.
1546
+ """
1547
+ if publication_jo is not None:
1548
+ pulumi.set(__self__, "publication_jo", publication_jo)
1549
+ if publication_jo_page is not None:
1550
+ pulumi.set(__self__, "publication_jo_page", publication_jo_page)
1551
+
1552
+ @property
1553
+ @pulumi.getter(name="publicationJo")
1554
+ def publication_jo(self) -> Optional[str]:
1555
+ """
1556
+ Publication date in the Official Journal (RFC3339 format) for association information.
1557
+ """
1558
+ return pulumi.get(self, "publication_jo")
1559
+
1560
+ @property
1561
+ @pulumi.getter(name="publicationJoPage")
1562
+ def publication_jo_page(self) -> Optional[int]:
1563
+ """
1564
+ Page number of the publication in the Official Journal for association information.
1565
+ """
1566
+ return pulumi.get(self, "publication_jo_page")
1567
+
1568
+
1569
+ @pulumi.output_type
1570
+ class RegistrationOwnerContactExtensionFrCodeAuthAfnicInfo(dict):
1571
+ @staticmethod
1572
+ def __key_warning(key: str):
1573
+ suggest = None
1574
+ if key == "codeAuthAfnic":
1575
+ suggest = "code_auth_afnic"
1576
+
1577
+ if suggest:
1578
+ pulumi.log.warn(f"Key '{key}' not found in RegistrationOwnerContactExtensionFrCodeAuthAfnicInfo. Access the value via the '{suggest}' property getter instead.")
1579
+
1580
+ def __getitem__(self, key: str) -> Any:
1581
+ RegistrationOwnerContactExtensionFrCodeAuthAfnicInfo.__key_warning(key)
1582
+ return super().__getitem__(key)
1583
+
1584
+ def get(self, key: str, default = None) -> Any:
1585
+ RegistrationOwnerContactExtensionFrCodeAuthAfnicInfo.__key_warning(key)
1586
+ return super().get(key, default)
1587
+
1588
+ def __init__(__self__, *,
1589
+ code_auth_afnic: Optional[str] = None):
1590
+ """
1591
+ :param str code_auth_afnic: AFNIC authorization code for the contact (specific to French domains).
1592
+ """
1593
+ if code_auth_afnic is not None:
1594
+ pulumi.set(__self__, "code_auth_afnic", code_auth_afnic)
1595
+
1596
+ @property
1597
+ @pulumi.getter(name="codeAuthAfnic")
1598
+ def code_auth_afnic(self) -> Optional[str]:
1599
+ """
1600
+ AFNIC authorization code for the contact (specific to French domains).
1601
+ """
1602
+ return pulumi.get(self, "code_auth_afnic")
1603
+
1604
+
1605
+ @pulumi.output_type
1606
+ class RegistrationOwnerContactExtensionFrDunsInfo(dict):
1607
+ @staticmethod
1608
+ def __key_warning(key: str):
1609
+ suggest = None
1610
+ if key == "dunsId":
1611
+ suggest = "duns_id"
1612
+ elif key == "localId":
1613
+ suggest = "local_id"
1614
+
1615
+ if suggest:
1616
+ pulumi.log.warn(f"Key '{key}' not found in RegistrationOwnerContactExtensionFrDunsInfo. Access the value via the '{suggest}' property getter instead.")
1617
+
1618
+ def __getitem__(self, key: str) -> Any:
1619
+ RegistrationOwnerContactExtensionFrDunsInfo.__key_warning(key)
1620
+ return super().__getitem__(key)
1621
+
1622
+ def get(self, key: str, default = None) -> Any:
1623
+ RegistrationOwnerContactExtensionFrDunsInfo.__key_warning(key)
1624
+ return super().get(key, default)
1625
+
1626
+ def __init__(__self__, *,
1627
+ duns_id: Optional[str] = None,
1628
+ local_id: Optional[str] = None):
1629
+ """
1630
+ :param str duns_id: DUNS ID associated with the domain owner (for French domains).
1631
+ :param str local_id: Local identifier of the domain owner (for French domains).
1632
+ """
1633
+ if duns_id is not None:
1634
+ pulumi.set(__self__, "duns_id", duns_id)
1635
+ if local_id is not None:
1636
+ pulumi.set(__self__, "local_id", local_id)
1637
+
1638
+ @property
1639
+ @pulumi.getter(name="dunsId")
1640
+ def duns_id(self) -> Optional[str]:
1641
+ """
1642
+ DUNS ID associated with the domain owner (for French domains).
1643
+ """
1644
+ return pulumi.get(self, "duns_id")
1645
+
1646
+ @property
1647
+ @pulumi.getter(name="localId")
1648
+ def local_id(self) -> Optional[str]:
1649
+ """
1650
+ Local identifier of the domain owner (for French domains).
1651
+ """
1652
+ return pulumi.get(self, "local_id")
1653
+
1654
+
1655
+ @pulumi.output_type
1656
+ class RegistrationOwnerContactExtensionFrIndividualInfo(dict):
1657
+ @staticmethod
1658
+ def __key_warning(key: str):
1659
+ suggest = None
1660
+ if key == "whoisOptIn":
1661
+ suggest = "whois_opt_in"
1662
+
1663
+ if suggest:
1664
+ pulumi.log.warn(f"Key '{key}' not found in RegistrationOwnerContactExtensionFrIndividualInfo. Access the value via the '{suggest}' property getter instead.")
1665
+
1666
+ def __getitem__(self, key: str) -> Any:
1667
+ RegistrationOwnerContactExtensionFrIndividualInfo.__key_warning(key)
1668
+ return super().__getitem__(key)
1669
+
1670
+ def get(self, key: str, default = None) -> Any:
1671
+ RegistrationOwnerContactExtensionFrIndividualInfo.__key_warning(key)
1672
+ return super().get(key, default)
1673
+
1674
+ def __init__(__self__, *,
1675
+ whois_opt_in: Optional[bool] = None):
1676
+ """
1677
+ :param bool whois_opt_in: Whether the individual contact has opted into WHOIS publishing.
1678
+ """
1679
+ if whois_opt_in is not None:
1680
+ pulumi.set(__self__, "whois_opt_in", whois_opt_in)
1681
+
1682
+ @property
1683
+ @pulumi.getter(name="whoisOptIn")
1684
+ def whois_opt_in(self) -> Optional[bool]:
1685
+ """
1686
+ Whether the individual contact has opted into WHOIS publishing.
1687
+ """
1688
+ return pulumi.get(self, "whois_opt_in")
1689
+
1690
+
1691
+ @pulumi.output_type
1692
+ class RegistrationOwnerContactExtensionFrTrademarkInfo(dict):
1693
+ @staticmethod
1694
+ def __key_warning(key: str):
1695
+ suggest = None
1696
+ if key == "trademarkInpi":
1697
+ suggest = "trademark_inpi"
1698
+
1699
+ if suggest:
1700
+ pulumi.log.warn(f"Key '{key}' not found in RegistrationOwnerContactExtensionFrTrademarkInfo. Access the value via the '{suggest}' property getter instead.")
1701
+
1702
+ def __getitem__(self, key: str) -> Any:
1703
+ RegistrationOwnerContactExtensionFrTrademarkInfo.__key_warning(key)
1704
+ return super().__getitem__(key)
1705
+
1706
+ def get(self, key: str, default = None) -> Any:
1707
+ RegistrationOwnerContactExtensionFrTrademarkInfo.__key_warning(key)
1708
+ return super().get(key, default)
1709
+
1710
+ def __init__(__self__, *,
1711
+ trademark_inpi: Optional[str] = None):
1712
+ """
1713
+ :param str trademark_inpi: Trademark information from INPI (French extension).
1714
+ """
1715
+ if trademark_inpi is not None:
1716
+ pulumi.set(__self__, "trademark_inpi", trademark_inpi)
1717
+
1718
+ @property
1719
+ @pulumi.getter(name="trademarkInpi")
1720
+ def trademark_inpi(self) -> Optional[str]:
1721
+ """
1722
+ Trademark information from INPI (French extension).
1723
+ """
1724
+ return pulumi.get(self, "trademark_inpi")
1725
+
1726
+
1727
+ @pulumi.output_type
1728
+ class RegistrationTechnicalContact(dict):
1729
+ @staticmethod
1730
+ def __key_warning(key: str):
1731
+ suggest = None
1732
+ if key == "addressLine1":
1733
+ suggest = "address_line1"
1734
+ elif key == "companyIdentificationCode":
1735
+ suggest = "company_identification_code"
1736
+ elif key == "legalForm":
1737
+ suggest = "legal_form"
1738
+ elif key == "phoneNumber":
1739
+ suggest = "phone_number"
1740
+ elif key == "vatIdentificationCode":
1741
+ suggest = "vat_identification_code"
1742
+ elif key == "addressLine2":
1743
+ suggest = "address_line2"
1744
+ elif key == "companyName":
1745
+ suggest = "company_name"
1746
+ elif key == "emailAlt":
1747
+ suggest = "email_alt"
1748
+ elif key == "extensionEu":
1749
+ suggest = "extension_eu"
1750
+ elif key == "extensionFr":
1751
+ suggest = "extension_fr"
1752
+ elif key == "extensionNls":
1753
+ suggest = "extension_nls"
1754
+ elif key == "faxNumber":
1755
+ suggest = "fax_number"
1756
+ elif key == "whoisOptIn":
1757
+ suggest = "whois_opt_in"
1758
+
1759
+ if suggest:
1760
+ pulumi.log.warn(f"Key '{key}' not found in RegistrationTechnicalContact. Access the value via the '{suggest}' property getter instead.")
1761
+
1762
+ def __getitem__(self, key: str) -> Any:
1763
+ RegistrationTechnicalContact.__key_warning(key)
1764
+ return super().__getitem__(key)
1765
+
1766
+ def get(self, key: str, default = None) -> Any:
1767
+ RegistrationTechnicalContact.__key_warning(key)
1768
+ return super().get(key, default)
1769
+
1770
+ def __init__(__self__, *,
1771
+ address_line1: str,
1772
+ city: str,
1773
+ company_identification_code: str,
1774
+ country: str,
1775
+ email: str,
1776
+ firstname: str,
1777
+ lastname: str,
1778
+ legal_form: str,
1779
+ phone_number: str,
1780
+ vat_identification_code: str,
1781
+ zip: str,
1782
+ address_line2: Optional[str] = None,
1783
+ company_name: Optional[str] = None,
1784
+ email_alt: Optional[str] = None,
1785
+ extension_eu: Optional['outputs.RegistrationTechnicalContactExtensionEu'] = None,
1786
+ extension_fr: Optional['outputs.RegistrationTechnicalContactExtensionFr'] = None,
1787
+ extension_nls: Optional[Sequence[str]] = None,
1788
+ fax_number: Optional[str] = None,
1789
+ lang: Optional[str] = None,
1790
+ resale: Optional[bool] = None,
1791
+ state: Optional[str] = None,
1792
+ whois_opt_in: Optional[bool] = None):
1793
+ """
1794
+ :param str address_line1: Primary address line for the contact.
1795
+ :param str city: City of the contact's address.
1796
+ :param str company_identification_code: Company identification code (e.g., SIREN/SIRET in France) for the contact.
1797
+ :param str country: Country code of the contact's address (ISO format).
1798
+ :param str email: Primary email address of the contact.
1799
+ :param str firstname: First name of the contact.
1800
+ :param str lastname: Last name of the contact.
1801
+ :param str legal_form: Legal form of the contact (e.g., 'individual' or 'organization').
1802
+ :param str phone_number: Primary phone number of the contact.
1803
+ :param str vat_identification_code: VAT identification code of the contact, if applicable.
1804
+ :param str zip: Postal code of the contact's address.
1805
+ :param str address_line2: Secondary address line for the contact (optional).
1806
+ :param str company_name: Name of the company associated with the contact (if applicable).
1807
+ :param str email_alt: Alternative email address for the contact.
1808
+ :param 'RegistrationTechnicalContactExtensionEuArgs' extension_eu: Details specific to European domain extensions.
1809
+ :param 'RegistrationTechnicalContactExtensionFrArgs' extension_fr: Details specific to French domain extensions.
1810
+ :param Sequence[str] extension_nls: Extension details specific to Dutch domain registrations.
1811
+ :param str fax_number: Fax number for the contact (if available).
1812
+ :param str lang: Preferred language of the contact (e.g., 'en_US', 'fr_FR').
1813
+ :param bool resale: Indicates if the contact is used for resale purposes.
1814
+ :param str state: State or region of the contact.
1815
+ :param bool whois_opt_in: Indicates whether the contact has opted into WHOIS publishing.
1816
+ """
1817
+ pulumi.set(__self__, "address_line1", address_line1)
1818
+ pulumi.set(__self__, "city", city)
1819
+ pulumi.set(__self__, "company_identification_code", company_identification_code)
1820
+ pulumi.set(__self__, "country", country)
1821
+ pulumi.set(__self__, "email", email)
1822
+ pulumi.set(__self__, "firstname", firstname)
1823
+ pulumi.set(__self__, "lastname", lastname)
1824
+ pulumi.set(__self__, "legal_form", legal_form)
1825
+ pulumi.set(__self__, "phone_number", phone_number)
1826
+ pulumi.set(__self__, "vat_identification_code", vat_identification_code)
1827
+ pulumi.set(__self__, "zip", zip)
1828
+ if address_line2 is not None:
1829
+ pulumi.set(__self__, "address_line2", address_line2)
1830
+ if company_name is not None:
1831
+ pulumi.set(__self__, "company_name", company_name)
1832
+ if email_alt is not None:
1833
+ pulumi.set(__self__, "email_alt", email_alt)
1834
+ if extension_eu is not None:
1835
+ pulumi.set(__self__, "extension_eu", extension_eu)
1836
+ if extension_fr is not None:
1837
+ pulumi.set(__self__, "extension_fr", extension_fr)
1838
+ if extension_nls is not None:
1839
+ pulumi.set(__self__, "extension_nls", extension_nls)
1840
+ if fax_number is not None:
1841
+ pulumi.set(__self__, "fax_number", fax_number)
1842
+ if lang is not None:
1843
+ pulumi.set(__self__, "lang", lang)
1844
+ if resale is not None:
1845
+ pulumi.set(__self__, "resale", resale)
1846
+ if state is not None:
1847
+ pulumi.set(__self__, "state", state)
1848
+ if whois_opt_in is not None:
1849
+ pulumi.set(__self__, "whois_opt_in", whois_opt_in)
1850
+
1851
+ @property
1852
+ @pulumi.getter(name="addressLine1")
1853
+ def address_line1(self) -> str:
1854
+ """
1855
+ Primary address line for the contact.
1856
+ """
1857
+ return pulumi.get(self, "address_line1")
1858
+
1859
+ @property
1860
+ @pulumi.getter
1861
+ def city(self) -> str:
1862
+ """
1863
+ City of the contact's address.
1864
+ """
1865
+ return pulumi.get(self, "city")
1866
+
1867
+ @property
1868
+ @pulumi.getter(name="companyIdentificationCode")
1869
+ def company_identification_code(self) -> str:
1870
+ """
1871
+ Company identification code (e.g., SIREN/SIRET in France) for the contact.
1872
+ """
1873
+ return pulumi.get(self, "company_identification_code")
1874
+
1875
+ @property
1876
+ @pulumi.getter
1877
+ def country(self) -> str:
1878
+ """
1879
+ Country code of the contact's address (ISO format).
1880
+ """
1881
+ return pulumi.get(self, "country")
1882
+
1883
+ @property
1884
+ @pulumi.getter
1885
+ def email(self) -> str:
1886
+ """
1887
+ Primary email address of the contact.
1888
+ """
1889
+ return pulumi.get(self, "email")
1890
+
1891
+ @property
1892
+ @pulumi.getter
1893
+ def firstname(self) -> str:
1894
+ """
1895
+ First name of the contact.
1896
+ """
1897
+ return pulumi.get(self, "firstname")
1898
+
1899
+ @property
1900
+ @pulumi.getter
1901
+ def lastname(self) -> str:
1902
+ """
1903
+ Last name of the contact.
1904
+ """
1905
+ return pulumi.get(self, "lastname")
1906
+
1907
+ @property
1908
+ @pulumi.getter(name="legalForm")
1909
+ def legal_form(self) -> str:
1910
+ """
1911
+ Legal form of the contact (e.g., 'individual' or 'organization').
1912
+ """
1913
+ return pulumi.get(self, "legal_form")
1914
+
1915
+ @property
1916
+ @pulumi.getter(name="phoneNumber")
1917
+ def phone_number(self) -> str:
1918
+ """
1919
+ Primary phone number of the contact.
1920
+ """
1921
+ return pulumi.get(self, "phone_number")
1922
+
1923
+ @property
1924
+ @pulumi.getter(name="vatIdentificationCode")
1925
+ def vat_identification_code(self) -> str:
1926
+ """
1927
+ VAT identification code of the contact, if applicable.
1928
+ """
1929
+ return pulumi.get(self, "vat_identification_code")
1930
+
1931
+ @property
1932
+ @pulumi.getter
1933
+ def zip(self) -> str:
1934
+ """
1935
+ Postal code of the contact's address.
1936
+ """
1937
+ return pulumi.get(self, "zip")
1938
+
1939
+ @property
1940
+ @pulumi.getter(name="addressLine2")
1941
+ def address_line2(self) -> Optional[str]:
1942
+ """
1943
+ Secondary address line for the contact (optional).
1944
+ """
1945
+ return pulumi.get(self, "address_line2")
1946
+
1947
+ @property
1948
+ @pulumi.getter(name="companyName")
1949
+ def company_name(self) -> Optional[str]:
1950
+ """
1951
+ Name of the company associated with the contact (if applicable).
1952
+ """
1953
+ return pulumi.get(self, "company_name")
1954
+
1955
+ @property
1956
+ @pulumi.getter(name="emailAlt")
1957
+ def email_alt(self) -> Optional[str]:
1958
+ """
1959
+ Alternative email address for the contact.
1960
+ """
1961
+ return pulumi.get(self, "email_alt")
1962
+
1963
+ @property
1964
+ @pulumi.getter(name="extensionEu")
1965
+ def extension_eu(self) -> Optional['outputs.RegistrationTechnicalContactExtensionEu']:
1966
+ """
1967
+ Details specific to European domain extensions.
1968
+ """
1969
+ return pulumi.get(self, "extension_eu")
1970
+
1971
+ @property
1972
+ @pulumi.getter(name="extensionFr")
1973
+ def extension_fr(self) -> Optional['outputs.RegistrationTechnicalContactExtensionFr']:
1974
+ """
1975
+ Details specific to French domain extensions.
1976
+ """
1977
+ return pulumi.get(self, "extension_fr")
1978
+
1979
+ @property
1980
+ @pulumi.getter(name="extensionNls")
1981
+ def extension_nls(self) -> Optional[Sequence[str]]:
1982
+ """
1983
+ Extension details specific to Dutch domain registrations.
1984
+ """
1985
+ return pulumi.get(self, "extension_nls")
1986
+
1987
+ @property
1988
+ @pulumi.getter(name="faxNumber")
1989
+ def fax_number(self) -> Optional[str]:
1990
+ """
1991
+ Fax number for the contact (if available).
1992
+ """
1993
+ return pulumi.get(self, "fax_number")
1994
+
1995
+ @property
1996
+ @pulumi.getter
1997
+ def lang(self) -> Optional[str]:
1998
+ """
1999
+ Preferred language of the contact (e.g., 'en_US', 'fr_FR').
2000
+ """
2001
+ return pulumi.get(self, "lang")
2002
+
2003
+ @property
2004
+ @pulumi.getter
2005
+ def resale(self) -> Optional[bool]:
2006
+ """
2007
+ Indicates if the contact is used for resale purposes.
2008
+ """
2009
+ return pulumi.get(self, "resale")
2010
+
2011
+ @property
2012
+ @pulumi.getter
2013
+ def state(self) -> Optional[str]:
2014
+ """
2015
+ State or region of the contact.
2016
+ """
2017
+ return pulumi.get(self, "state")
2018
+
2019
+ @property
2020
+ @pulumi.getter(name="whoisOptIn")
2021
+ def whois_opt_in(self) -> Optional[bool]:
2022
+ """
2023
+ Indicates whether the contact has opted into WHOIS publishing.
2024
+ """
2025
+ return pulumi.get(self, "whois_opt_in")
2026
+
2027
+
2028
+ @pulumi.output_type
2029
+ class RegistrationTechnicalContactExtensionEu(dict):
2030
+ @staticmethod
2031
+ def __key_warning(key: str):
2032
+ suggest = None
2033
+ if key == "europeanCitizenship":
2034
+ suggest = "european_citizenship"
2035
+
2036
+ if suggest:
2037
+ pulumi.log.warn(f"Key '{key}' not found in RegistrationTechnicalContactExtensionEu. Access the value via the '{suggest}' property getter instead.")
2038
+
2039
+ def __getitem__(self, key: str) -> Any:
2040
+ RegistrationTechnicalContactExtensionEu.__key_warning(key)
2041
+ return super().__getitem__(key)
2042
+
2043
+ def get(self, key: str, default = None) -> Any:
2044
+ RegistrationTechnicalContactExtensionEu.__key_warning(key)
2045
+ return super().get(key, default)
2046
+
2047
+ def __init__(__self__, *,
2048
+ european_citizenship: Optional[str] = None):
2049
+ """
2050
+ :param str european_citizenship: Indicates the European citizenship of the contact.
2051
+ """
2052
+ if european_citizenship is not None:
2053
+ pulumi.set(__self__, "european_citizenship", european_citizenship)
2054
+
2055
+ @property
2056
+ @pulumi.getter(name="europeanCitizenship")
2057
+ def european_citizenship(self) -> Optional[str]:
2058
+ """
2059
+ Indicates the European citizenship of the contact.
2060
+ """
2061
+ return pulumi.get(self, "european_citizenship")
2062
+
2063
+
2064
+ @pulumi.output_type
2065
+ class RegistrationTechnicalContactExtensionFr(dict):
2066
+ @staticmethod
2067
+ def __key_warning(key: str):
2068
+ suggest = None
2069
+ if key == "associationInfo":
2070
+ suggest = "association_info"
2071
+ elif key == "codeAuthAfnicInfo":
2072
+ suggest = "code_auth_afnic_info"
2073
+ elif key == "dunsInfo":
2074
+ suggest = "duns_info"
2075
+ elif key == "individualInfo":
2076
+ suggest = "individual_info"
2077
+ elif key == "trademarkInfo":
2078
+ suggest = "trademark_info"
2079
+
2080
+ if suggest:
2081
+ pulumi.log.warn(f"Key '{key}' not found in RegistrationTechnicalContactExtensionFr. Access the value via the '{suggest}' property getter instead.")
2082
+
2083
+ def __getitem__(self, key: str) -> Any:
2084
+ RegistrationTechnicalContactExtensionFr.__key_warning(key)
2085
+ return super().__getitem__(key)
2086
+
2087
+ def get(self, key: str, default = None) -> Any:
2088
+ RegistrationTechnicalContactExtensionFr.__key_warning(key)
2089
+ return super().get(key, default)
2090
+
2091
+ def __init__(__self__, *,
2092
+ association_info: Optional['outputs.RegistrationTechnicalContactExtensionFrAssociationInfo'] = None,
2093
+ code_auth_afnic_info: Optional['outputs.RegistrationTechnicalContactExtensionFrCodeAuthAfnicInfo'] = None,
2094
+ duns_info: Optional['outputs.RegistrationTechnicalContactExtensionFrDunsInfo'] = None,
2095
+ individual_info: Optional['outputs.RegistrationTechnicalContactExtensionFrIndividualInfo'] = None,
2096
+ mode: Optional[str] = None,
2097
+ trademark_info: Optional['outputs.RegistrationTechnicalContactExtensionFrTrademarkInfo'] = None):
2098
+ """
2099
+ :param 'RegistrationTechnicalContactExtensionFrAssociationInfoArgs' association_info: Association-specific information for the domain (French extension).
2100
+ :param 'RegistrationTechnicalContactExtensionFrCodeAuthAfnicInfoArgs' code_auth_afnic_info: AFNIC authorization information for the contact (French extension).
2101
+ :param 'RegistrationTechnicalContactExtensionFrDunsInfoArgs' duns_info: DUNS information for the domain owner (specific to French domains).
2102
+ :param 'RegistrationTechnicalContactExtensionFrIndividualInfoArgs' individual_info: Information about the individual registration for French domains.
2103
+ :param str mode: Mode of the French extension (e.g., 'individual', 'duns', 'association', etc.).
2104
+ :param 'RegistrationTechnicalContactExtensionFrTrademarkInfoArgs' trademark_info: Trademark-related information for the domain (French extension).
2105
+ """
2106
+ if association_info is not None:
2107
+ pulumi.set(__self__, "association_info", association_info)
2108
+ if code_auth_afnic_info is not None:
2109
+ pulumi.set(__self__, "code_auth_afnic_info", code_auth_afnic_info)
2110
+ if duns_info is not None:
2111
+ pulumi.set(__self__, "duns_info", duns_info)
2112
+ if individual_info is not None:
2113
+ pulumi.set(__self__, "individual_info", individual_info)
2114
+ if mode is not None:
2115
+ pulumi.set(__self__, "mode", mode)
2116
+ if trademark_info is not None:
2117
+ pulumi.set(__self__, "trademark_info", trademark_info)
2118
+
2119
+ @property
2120
+ @pulumi.getter(name="associationInfo")
2121
+ def association_info(self) -> Optional['outputs.RegistrationTechnicalContactExtensionFrAssociationInfo']:
2122
+ """
2123
+ Association-specific information for the domain (French extension).
2124
+ """
2125
+ return pulumi.get(self, "association_info")
2126
+
2127
+ @property
2128
+ @pulumi.getter(name="codeAuthAfnicInfo")
2129
+ def code_auth_afnic_info(self) -> Optional['outputs.RegistrationTechnicalContactExtensionFrCodeAuthAfnicInfo']:
2130
+ """
2131
+ AFNIC authorization information for the contact (French extension).
2132
+ """
2133
+ return pulumi.get(self, "code_auth_afnic_info")
2134
+
2135
+ @property
2136
+ @pulumi.getter(name="dunsInfo")
2137
+ def duns_info(self) -> Optional['outputs.RegistrationTechnicalContactExtensionFrDunsInfo']:
2138
+ """
2139
+ DUNS information for the domain owner (specific to French domains).
2140
+ """
2141
+ return pulumi.get(self, "duns_info")
2142
+
2143
+ @property
2144
+ @pulumi.getter(name="individualInfo")
2145
+ def individual_info(self) -> Optional['outputs.RegistrationTechnicalContactExtensionFrIndividualInfo']:
2146
+ """
2147
+ Information about the individual registration for French domains.
2148
+ """
2149
+ return pulumi.get(self, "individual_info")
2150
+
2151
+ @property
2152
+ @pulumi.getter
2153
+ def mode(self) -> Optional[str]:
2154
+ """
2155
+ Mode of the French extension (e.g., 'individual', 'duns', 'association', etc.).
2156
+ """
2157
+ return pulumi.get(self, "mode")
2158
+
2159
+ @property
2160
+ @pulumi.getter(name="trademarkInfo")
2161
+ def trademark_info(self) -> Optional['outputs.RegistrationTechnicalContactExtensionFrTrademarkInfo']:
2162
+ """
2163
+ Trademark-related information for the domain (French extension).
2164
+ """
2165
+ return pulumi.get(self, "trademark_info")
2166
+
2167
+
2168
+ @pulumi.output_type
2169
+ class RegistrationTechnicalContactExtensionFrAssociationInfo(dict):
2170
+ @staticmethod
2171
+ def __key_warning(key: str):
2172
+ suggest = None
2173
+ if key == "publicationJo":
2174
+ suggest = "publication_jo"
2175
+ elif key == "publicationJoPage":
2176
+ suggest = "publication_jo_page"
2177
+
2178
+ if suggest:
2179
+ pulumi.log.warn(f"Key '{key}' not found in RegistrationTechnicalContactExtensionFrAssociationInfo. Access the value via the '{suggest}' property getter instead.")
2180
+
2181
+ def __getitem__(self, key: str) -> Any:
2182
+ RegistrationTechnicalContactExtensionFrAssociationInfo.__key_warning(key)
2183
+ return super().__getitem__(key)
2184
+
2185
+ def get(self, key: str, default = None) -> Any:
2186
+ RegistrationTechnicalContactExtensionFrAssociationInfo.__key_warning(key)
2187
+ return super().get(key, default)
2188
+
2189
+ def __init__(__self__, *,
2190
+ publication_jo: Optional[str] = None,
2191
+ publication_jo_page: Optional[int] = None):
2192
+ """
2193
+ :param str publication_jo: Publication date in the Official Journal (RFC3339 format) for association information.
2194
+ :param int publication_jo_page: Page number of the publication in the Official Journal for association information.
2195
+ """
2196
+ if publication_jo is not None:
2197
+ pulumi.set(__self__, "publication_jo", publication_jo)
2198
+ if publication_jo_page is not None:
2199
+ pulumi.set(__self__, "publication_jo_page", publication_jo_page)
2200
+
2201
+ @property
2202
+ @pulumi.getter(name="publicationJo")
2203
+ def publication_jo(self) -> Optional[str]:
2204
+ """
2205
+ Publication date in the Official Journal (RFC3339 format) for association information.
2206
+ """
2207
+ return pulumi.get(self, "publication_jo")
2208
+
2209
+ @property
2210
+ @pulumi.getter(name="publicationJoPage")
2211
+ def publication_jo_page(self) -> Optional[int]:
2212
+ """
2213
+ Page number of the publication in the Official Journal for association information.
2214
+ """
2215
+ return pulumi.get(self, "publication_jo_page")
2216
+
2217
+
2218
+ @pulumi.output_type
2219
+ class RegistrationTechnicalContactExtensionFrCodeAuthAfnicInfo(dict):
2220
+ @staticmethod
2221
+ def __key_warning(key: str):
2222
+ suggest = None
2223
+ if key == "codeAuthAfnic":
2224
+ suggest = "code_auth_afnic"
2225
+
2226
+ if suggest:
2227
+ pulumi.log.warn(f"Key '{key}' not found in RegistrationTechnicalContactExtensionFrCodeAuthAfnicInfo. Access the value via the '{suggest}' property getter instead.")
2228
+
2229
+ def __getitem__(self, key: str) -> Any:
2230
+ RegistrationTechnicalContactExtensionFrCodeAuthAfnicInfo.__key_warning(key)
2231
+ return super().__getitem__(key)
2232
+
2233
+ def get(self, key: str, default = None) -> Any:
2234
+ RegistrationTechnicalContactExtensionFrCodeAuthAfnicInfo.__key_warning(key)
2235
+ return super().get(key, default)
2236
+
2237
+ def __init__(__self__, *,
2238
+ code_auth_afnic: Optional[str] = None):
2239
+ """
2240
+ :param str code_auth_afnic: AFNIC authorization code for the contact (specific to French domains).
2241
+ """
2242
+ if code_auth_afnic is not None:
2243
+ pulumi.set(__self__, "code_auth_afnic", code_auth_afnic)
2244
+
2245
+ @property
2246
+ @pulumi.getter(name="codeAuthAfnic")
2247
+ def code_auth_afnic(self) -> Optional[str]:
2248
+ """
2249
+ AFNIC authorization code for the contact (specific to French domains).
2250
+ """
2251
+ return pulumi.get(self, "code_auth_afnic")
2252
+
2253
+
2254
+ @pulumi.output_type
2255
+ class RegistrationTechnicalContactExtensionFrDunsInfo(dict):
2256
+ @staticmethod
2257
+ def __key_warning(key: str):
2258
+ suggest = None
2259
+ if key == "dunsId":
2260
+ suggest = "duns_id"
2261
+ elif key == "localId":
2262
+ suggest = "local_id"
2263
+
2264
+ if suggest:
2265
+ pulumi.log.warn(f"Key '{key}' not found in RegistrationTechnicalContactExtensionFrDunsInfo. Access the value via the '{suggest}' property getter instead.")
2266
+
2267
+ def __getitem__(self, key: str) -> Any:
2268
+ RegistrationTechnicalContactExtensionFrDunsInfo.__key_warning(key)
2269
+ return super().__getitem__(key)
2270
+
2271
+ def get(self, key: str, default = None) -> Any:
2272
+ RegistrationTechnicalContactExtensionFrDunsInfo.__key_warning(key)
2273
+ return super().get(key, default)
2274
+
2275
+ def __init__(__self__, *,
2276
+ duns_id: Optional[str] = None,
2277
+ local_id: Optional[str] = None):
2278
+ """
2279
+ :param str duns_id: DUNS ID associated with the domain owner (for French domains).
2280
+ :param str local_id: Local identifier of the domain owner (for French domains).
2281
+ """
2282
+ if duns_id is not None:
2283
+ pulumi.set(__self__, "duns_id", duns_id)
2284
+ if local_id is not None:
2285
+ pulumi.set(__self__, "local_id", local_id)
2286
+
2287
+ @property
2288
+ @pulumi.getter(name="dunsId")
2289
+ def duns_id(self) -> Optional[str]:
2290
+ """
2291
+ DUNS ID associated with the domain owner (for French domains).
2292
+ """
2293
+ return pulumi.get(self, "duns_id")
2294
+
2295
+ @property
2296
+ @pulumi.getter(name="localId")
2297
+ def local_id(self) -> Optional[str]:
2298
+ """
2299
+ Local identifier of the domain owner (for French domains).
2300
+ """
2301
+ return pulumi.get(self, "local_id")
2302
+
2303
+
2304
+ @pulumi.output_type
2305
+ class RegistrationTechnicalContactExtensionFrIndividualInfo(dict):
2306
+ @staticmethod
2307
+ def __key_warning(key: str):
2308
+ suggest = None
2309
+ if key == "whoisOptIn":
2310
+ suggest = "whois_opt_in"
2311
+
2312
+ if suggest:
2313
+ pulumi.log.warn(f"Key '{key}' not found in RegistrationTechnicalContactExtensionFrIndividualInfo. Access the value via the '{suggest}' property getter instead.")
2314
+
2315
+ def __getitem__(self, key: str) -> Any:
2316
+ RegistrationTechnicalContactExtensionFrIndividualInfo.__key_warning(key)
2317
+ return super().__getitem__(key)
2318
+
2319
+ def get(self, key: str, default = None) -> Any:
2320
+ RegistrationTechnicalContactExtensionFrIndividualInfo.__key_warning(key)
2321
+ return super().get(key, default)
2322
+
2323
+ def __init__(__self__, *,
2324
+ whois_opt_in: Optional[bool] = None):
2325
+ """
2326
+ :param bool whois_opt_in: Whether the individual contact has opted into WHOIS publishing.
2327
+ """
2328
+ if whois_opt_in is not None:
2329
+ pulumi.set(__self__, "whois_opt_in", whois_opt_in)
2330
+
2331
+ @property
2332
+ @pulumi.getter(name="whoisOptIn")
2333
+ def whois_opt_in(self) -> Optional[bool]:
2334
+ """
2335
+ Whether the individual contact has opted into WHOIS publishing.
2336
+ """
2337
+ return pulumi.get(self, "whois_opt_in")
2338
+
2339
+
2340
+ @pulumi.output_type
2341
+ class RegistrationTechnicalContactExtensionFrTrademarkInfo(dict):
2342
+ @staticmethod
2343
+ def __key_warning(key: str):
2344
+ suggest = None
2345
+ if key == "trademarkInpi":
2346
+ suggest = "trademark_inpi"
2347
+
2348
+ if suggest:
2349
+ pulumi.log.warn(f"Key '{key}' not found in RegistrationTechnicalContactExtensionFrTrademarkInfo. Access the value via the '{suggest}' property getter instead.")
2350
+
2351
+ def __getitem__(self, key: str) -> Any:
2352
+ RegistrationTechnicalContactExtensionFrTrademarkInfo.__key_warning(key)
2353
+ return super().__getitem__(key)
2354
+
2355
+ def get(self, key: str, default = None) -> Any:
2356
+ RegistrationTechnicalContactExtensionFrTrademarkInfo.__key_warning(key)
2357
+ return super().get(key, default)
2358
+
2359
+ def __init__(__self__, *,
2360
+ trademark_inpi: Optional[str] = None):
2361
+ """
2362
+ :param str trademark_inpi: Trademark information from INPI (French extension).
2363
+ """
2364
+ if trademark_inpi is not None:
2365
+ pulumi.set(__self__, "trademark_inpi", trademark_inpi)
2366
+
2367
+ @property
2368
+ @pulumi.getter(name="trademarkInpi")
2369
+ def trademark_inpi(self) -> Optional[str]:
2370
+ """
2371
+ Trademark information from INPI (French extension).
2372
+ """
2373
+ return pulumi.get(self, "trademark_inpi")
2374
+
2375
+
231
2376
  @pulumi.output_type
232
2377
  class GetRecordGeoIpResult(dict):
233
2378
  def __init__(__self__, *,