import { Construct } from 'constructs'; import * as cdktf from 'cdktf'; export interface ConversationsMessagingIntegrationsAppleConfig extends cdktf.TerraformMetaArguments { /** * The name of the business. * * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/mypurecloud/genesyscloud/1.73.0/docs/resources/conversations_messaging_integrations_apple#business_name ConversationsMessagingIntegrationsApple#business_name} */ readonly businessName?: string; /** * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/mypurecloud/genesyscloud/1.73.0/docs/resources/conversations_messaging_integrations_apple#id ConversationsMessagingIntegrationsApple#id} * * Please be aware that the id field is automatically added to all resources in Terraform providers using a Terraform provider SDK version below 2. * If you experience problems setting this value it might not be settable. Please take a look at the provider documentation to ensure it should be settable. */ readonly id?: string; /** * The url of the businesses logo. * * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/mypurecloud/genesyscloud/1.73.0/docs/resources/conversations_messaging_integrations_apple#logo_url ConversationsMessagingIntegrationsApple#logo_url} */ readonly logoUrl?: string; /** * The Apple Messages for Business Id for the Apple messaging integration. * * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/mypurecloud/genesyscloud/1.73.0/docs/resources/conversations_messaging_integrations_apple#messages_for_business_id ConversationsMessagingIntegrationsApple#messages_for_business_id} */ readonly messagesForBusinessId: string; /** * The ID of the messaging setting configured for this integration * * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/mypurecloud/genesyscloud/1.73.0/docs/resources/conversations_messaging_integrations_apple#messaging_setting_id ConversationsMessagingIntegrationsApple#messaging_setting_id} */ readonly messagingSettingId?: string; /** * The name of the Apple messaging integration. * * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/mypurecloud/genesyscloud/1.73.0/docs/resources/conversations_messaging_integrations_apple#name ConversationsMessagingIntegrationsApple#name} */ readonly name: string; /** * The ID of the supported content profile configured for this integration. If not set, the default supported content profile will be used. * * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/mypurecloud/genesyscloud/1.73.0/docs/resources/conversations_messaging_integrations_apple#supported_content_id ConversationsMessagingIntegrationsApple#supported_content_id} */ readonly supportedContentId?: string; /** * apple_authentication block * * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/mypurecloud/genesyscloud/1.73.0/docs/resources/conversations_messaging_integrations_apple#apple_authentication ConversationsMessagingIntegrationsApple#apple_authentication} */ readonly appleAuthentication?: ConversationsMessagingIntegrationsAppleAppleAuthentication; /** * apple_i_message_app block * * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/mypurecloud/genesyscloud/1.73.0/docs/resources/conversations_messaging_integrations_apple#apple_i_message_app ConversationsMessagingIntegrationsApple#apple_i_message_app} */ readonly appleIMessageApp?: ConversationsMessagingIntegrationsAppleAppleIMessageApp; /** * apple_pay block * * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/mypurecloud/genesyscloud/1.73.0/docs/resources/conversations_messaging_integrations_apple#apple_pay ConversationsMessagingIntegrationsApple#apple_pay} */ readonly applePay?: ConversationsMessagingIntegrationsAppleApplePay; } export interface ConversationsMessagingIntegrationsAppleAppleAuthentication { /** * The Apple Messages for Business OAuth client id. * * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/mypurecloud/genesyscloud/1.73.0/docs/resources/conversations_messaging_integrations_apple#oauth_client_id ConversationsMessagingIntegrationsApple#oauth_client_id} */ readonly oauthClientId?: string; /** * The Apple Messages for Business OAuth client secret. * * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/mypurecloud/genesyscloud/1.73.0/docs/resources/conversations_messaging_integrations_apple#oauth_client_secret ConversationsMessagingIntegrationsApple#oauth_client_secret} */ readonly oauthClientSecret?: string; /** * The Apple Messages for Business OAuth scope. * * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/mypurecloud/genesyscloud/1.73.0/docs/resources/conversations_messaging_integrations_apple#oauth_scope ConversationsMessagingIntegrationsApple#oauth_scope} */ readonly oauthScope?: string; /** * The Apple Messages for Business token URL. * * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/mypurecloud/genesyscloud/1.73.0/docs/resources/conversations_messaging_integrations_apple#oauth_token_url ConversationsMessagingIntegrationsApple#oauth_token_url} */ readonly oauthTokenUrl?: string; } export declare function conversationsMessagingIntegrationsAppleAppleAuthenticationToTerraform(struct?: ConversationsMessagingIntegrationsAppleAppleAuthenticationOutputReference | ConversationsMessagingIntegrationsAppleAppleAuthentication): any; export declare function conversationsMessagingIntegrationsAppleAppleAuthenticationToHclTerraform(struct?: ConversationsMessagingIntegrationsAppleAppleAuthenticationOutputReference | ConversationsMessagingIntegrationsAppleAppleAuthentication): any; export declare class ConversationsMessagingIntegrationsAppleAppleAuthenticationOutputReference extends cdktf.ComplexObject { private isEmptyObject; /** * @param terraformResource The parent resource * @param terraformAttribute The attribute on the parent resource this class is referencing */ constructor(terraformResource: cdktf.IInterpolatingParent, terraformAttribute: string); get internalValue(): ConversationsMessagingIntegrationsAppleAppleAuthentication | undefined; set internalValue(value: ConversationsMessagingIntegrationsAppleAppleAuthentication | undefined); private _oauthClientId?; get oauthClientId(): string; set oauthClientId(value: string); resetOauthClientId(): void; get oauthClientIdInput(): string; private _oauthClientSecret?; get oauthClientSecret(): string; set oauthClientSecret(value: string); resetOauthClientSecret(): void; get oauthClientSecretInput(): string; private _oauthScope?; get oauthScope(): string; set oauthScope(value: string); resetOauthScope(): void; get oauthScopeInput(): string; private _oauthTokenUrl?; get oauthTokenUrl(): string; set oauthTokenUrl(value: string); resetOauthTokenUrl(): void; get oauthTokenUrlInput(): string; } export interface ConversationsMessagingIntegrationsAppleAppleIMessageApp { /** * Application ID. * * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/mypurecloud/genesyscloud/1.73.0/docs/resources/conversations_messaging_integrations_apple#application_id ConversationsMessagingIntegrationsApple#application_id} */ readonly applicationId: string; /** * Application Name. * * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/mypurecloud/genesyscloud/1.73.0/docs/resources/conversations_messaging_integrations_apple#application_name ConversationsMessagingIntegrationsApple#application_name} */ readonly applicationName: string; /** * Bundle ID. * * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/mypurecloud/genesyscloud/1.73.0/docs/resources/conversations_messaging_integrations_apple#bundle_id ConversationsMessagingIntegrationsApple#bundle_id} */ readonly bundleId: string; } export declare function conversationsMessagingIntegrationsAppleAppleIMessageAppToTerraform(struct?: ConversationsMessagingIntegrationsAppleAppleIMessageAppOutputReference | ConversationsMessagingIntegrationsAppleAppleIMessageApp): any; export declare function conversationsMessagingIntegrationsAppleAppleIMessageAppToHclTerraform(struct?: ConversationsMessagingIntegrationsAppleAppleIMessageAppOutputReference | ConversationsMessagingIntegrationsAppleAppleIMessageApp): any; export declare class ConversationsMessagingIntegrationsAppleAppleIMessageAppOutputReference extends cdktf.ComplexObject { private isEmptyObject; /** * @param terraformResource The parent resource * @param terraformAttribute The attribute on the parent resource this class is referencing */ constructor(terraformResource: cdktf.IInterpolatingParent, terraformAttribute: string); get internalValue(): ConversationsMessagingIntegrationsAppleAppleIMessageApp | undefined; set internalValue(value: ConversationsMessagingIntegrationsAppleAppleIMessageApp | undefined); private _applicationId?; get applicationId(): string; set applicationId(value: string); get applicationIdInput(): string; private _applicationName?; get applicationName(): string; set applicationName(value: string); get applicationNameInput(): string; private _bundleId?; get bundleId(): string; set bundleId(value: string); get bundleIdInput(): string; } export interface ConversationsMessagingIntegrationsAppleApplePay { /** * The domain name associated with the merchant account. * * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/mypurecloud/genesyscloud/1.73.0/docs/resources/conversations_messaging_integrations_apple#domain_name ConversationsMessagingIntegrationsApple#domain_name} */ readonly domainName: string; /** * The url opened in a web browser if the customers device is unable to make payments using Apple Pay. * * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/mypurecloud/genesyscloud/1.73.0/docs/resources/conversations_messaging_integrations_apple#fallback_url ConversationsMessagingIntegrationsApple#fallback_url} */ readonly fallbackUrl?: string; /** * The stores merchant identifier. * * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/mypurecloud/genesyscloud/1.73.0/docs/resources/conversations_messaging_integrations_apple#merchant_id ConversationsMessagingIntegrationsApple#merchant_id} */ readonly merchantId: string; /** * The url called after completing the order to update the order information in your system * * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/mypurecloud/genesyscloud/1.73.0/docs/resources/conversations_messaging_integrations_apple#order_tracking_url ConversationsMessagingIntegrationsApple#order_tracking_url} */ readonly orderTrackingUrl?: string; /** * The payment capabilities supported by the merchant. * * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/mypurecloud/genesyscloud/1.73.0/docs/resources/conversations_messaging_integrations_apple#payment_capabilities ConversationsMessagingIntegrationsApple#payment_capabilities} */ readonly paymentCapabilities: string[]; /** * The Genesys credentialId the payment certificates are stored under. Must be a valid and existing credential ID created via /api/v2/integrations/credentials endpoint. See API documentation: https://developer.genesys.cloud/devapps/api-explorer#post-api-v2-integrations-credentials. Example payload: {"type": "applePayCertificate", "credentialFields": {"merchantKey": "base-64-key", "merchantCertificate": "base-64-cert"}} * * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/mypurecloud/genesyscloud/1.73.0/docs/resources/conversations_messaging_integrations_apple#payment_certificate_credential_id ConversationsMessagingIntegrationsApple#payment_certificate_credential_id} */ readonly paymentCertificateCredentialId: string; /** * The url used to process payments. * * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/mypurecloud/genesyscloud/1.73.0/docs/resources/conversations_messaging_integrations_apple#payment_gateway_url ConversationsMessagingIntegrationsApple#payment_gateway_url} */ readonly paymentGatewayUrl: string; /** * The url called when the customer changes their payment method. * * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/mypurecloud/genesyscloud/1.73.0/docs/resources/conversations_messaging_integrations_apple#payment_method_update_url ConversationsMessagingIntegrationsApple#payment_method_update_url} */ readonly paymentMethodUpdateUrl?: string; /** * The url called when the customer changes their shipping address information. * * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/mypurecloud/genesyscloud/1.73.0/docs/resources/conversations_messaging_integrations_apple#shipping_contact_update_url ConversationsMessagingIntegrationsApple#shipping_contact_update_url} */ readonly shippingContactUpdateUrl?: string; /** * The url called when the customer changes the shipping method. * * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/mypurecloud/genesyscloud/1.73.0/docs/resources/conversations_messaging_integrations_apple#shipping_method_update_url ConversationsMessagingIntegrationsApple#shipping_method_update_url} */ readonly shippingMethodUpdateUrl?: string; /** * The name of the store. * * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/mypurecloud/genesyscloud/1.73.0/docs/resources/conversations_messaging_integrations_apple#store_name ConversationsMessagingIntegrationsApple#store_name} */ readonly storeName: string; /** * The payment networks supported by the merchant. * * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/mypurecloud/genesyscloud/1.73.0/docs/resources/conversations_messaging_integrations_apple#supported_payment_networks ConversationsMessagingIntegrationsApple#supported_payment_networks} */ readonly supportedPaymentNetworks: string[]; } export declare function conversationsMessagingIntegrationsAppleApplePayToTerraform(struct?: ConversationsMessagingIntegrationsAppleApplePayOutputReference | ConversationsMessagingIntegrationsAppleApplePay): any; export declare function conversationsMessagingIntegrationsAppleApplePayToHclTerraform(struct?: ConversationsMessagingIntegrationsAppleApplePayOutputReference | ConversationsMessagingIntegrationsAppleApplePay): any; export declare class ConversationsMessagingIntegrationsAppleApplePayOutputReference extends cdktf.ComplexObject { private isEmptyObject; /** * @param terraformResource The parent resource * @param terraformAttribute The attribute on the parent resource this class is referencing */ constructor(terraformResource: cdktf.IInterpolatingParent, terraformAttribute: string); get internalValue(): ConversationsMessagingIntegrationsAppleApplePay | undefined; set internalValue(value: ConversationsMessagingIntegrationsAppleApplePay | undefined); private _domainName?; get domainName(): string; set domainName(value: string); get domainNameInput(): string; private _fallbackUrl?; get fallbackUrl(): string; set fallbackUrl(value: string); resetFallbackUrl(): void; get fallbackUrlInput(): string; private _merchantId?; get merchantId(): string; set merchantId(value: string); get merchantIdInput(): string; private _orderTrackingUrl?; get orderTrackingUrl(): string; set orderTrackingUrl(value: string); resetOrderTrackingUrl(): void; get orderTrackingUrlInput(): string; private _paymentCapabilities?; get paymentCapabilities(): string[]; set paymentCapabilities(value: string[]); get paymentCapabilitiesInput(): string[]; private _paymentCertificateCredentialId?; get paymentCertificateCredentialId(): string; set paymentCertificateCredentialId(value: string); get paymentCertificateCredentialIdInput(): string; private _paymentGatewayUrl?; get paymentGatewayUrl(): string; set paymentGatewayUrl(value: string); get paymentGatewayUrlInput(): string; private _paymentMethodUpdateUrl?; get paymentMethodUpdateUrl(): string; set paymentMethodUpdateUrl(value: string); resetPaymentMethodUpdateUrl(): void; get paymentMethodUpdateUrlInput(): string; private _shippingContactUpdateUrl?; get shippingContactUpdateUrl(): string; set shippingContactUpdateUrl(value: string); resetShippingContactUpdateUrl(): void; get shippingContactUpdateUrlInput(): string; private _shippingMethodUpdateUrl?; get shippingMethodUpdateUrl(): string; set shippingMethodUpdateUrl(value: string); resetShippingMethodUpdateUrl(): void; get shippingMethodUpdateUrlInput(): string; private _storeName?; get storeName(): string; set storeName(value: string); get storeNameInput(): string; private _supportedPaymentNetworks?; get supportedPaymentNetworks(): string[]; set supportedPaymentNetworks(value: string[]); get supportedPaymentNetworksInput(): string[]; } /** * Represents a {@link https://registry.terraform.io/providers/mypurecloud/genesyscloud/1.73.0/docs/resources/conversations_messaging_integrations_apple genesyscloud_conversations_messaging_integrations_apple} */ export declare class ConversationsMessagingIntegrationsApple extends cdktf.TerraformResource { static readonly tfResourceType = "genesyscloud_conversations_messaging_integrations_apple"; /** * Generates CDKTF code for importing a ConversationsMessagingIntegrationsApple resource upon running "cdktf plan " * @param scope The scope in which to define this construct * @param importToId The construct id used in the generated config for the ConversationsMessagingIntegrationsApple to import * @param importFromId The id of the existing ConversationsMessagingIntegrationsApple that should be imported. Refer to the {@link https://registry.terraform.io/providers/mypurecloud/genesyscloud/1.73.0/docs/resources/conversations_messaging_integrations_apple#import import section} in the documentation of this resource for the id to use * @param provider? Optional instance of the provider where the ConversationsMessagingIntegrationsApple to import is found */ static generateConfigForImport(scope: Construct, importToId: string, importFromId: string, provider?: cdktf.TerraformProvider): any; /** * Create a new {@link https://registry.terraform.io/providers/mypurecloud/genesyscloud/1.73.0/docs/resources/conversations_messaging_integrations_apple genesyscloud_conversations_messaging_integrations_apple} Resource * * @param scope The scope in which to define this construct * @param id The scoped construct ID. Must be unique amongst siblings in the same scope * @param options ConversationsMessagingIntegrationsAppleConfig */ constructor(scope: Construct, id: string, config: ConversationsMessagingIntegrationsAppleConfig); private _businessName?; get businessName(): string; set businessName(value: string); resetBusinessName(): void; get businessNameInput(): string; private _id?; get id(): string; set id(value: string); resetId(): void; get idInput(): string; private _logoUrl?; get logoUrl(): string; set logoUrl(value: string); resetLogoUrl(): void; get logoUrlInput(): string; private _messagesForBusinessId?; get messagesForBusinessId(): string; set messagesForBusinessId(value: string); get messagesForBusinessIdInput(): string; private _messagingSettingId?; get messagingSettingId(): string; set messagingSettingId(value: string); resetMessagingSettingId(): void; get messagingSettingIdInput(): string; private _name?; get name(): string; set name(value: string); get nameInput(): string; private _supportedContentId?; get supportedContentId(): string; set supportedContentId(value: string); resetSupportedContentId(): void; get supportedContentIdInput(): string; private _appleAuthentication; get appleAuthentication(): ConversationsMessagingIntegrationsAppleAppleAuthenticationOutputReference; putAppleAuthentication(value: ConversationsMessagingIntegrationsAppleAppleAuthentication): void; resetAppleAuthentication(): void; get appleAuthenticationInput(): ConversationsMessagingIntegrationsAppleAppleAuthentication; private _appleIMessageApp; get appleIMessageApp(): ConversationsMessagingIntegrationsAppleAppleIMessageAppOutputReference; putAppleIMessageApp(value: ConversationsMessagingIntegrationsAppleAppleIMessageApp): void; resetAppleIMessageApp(): void; get appleIMessageAppInput(): ConversationsMessagingIntegrationsAppleAppleIMessageApp; private _applePay; get applePay(): ConversationsMessagingIntegrationsAppleApplePayOutputReference; putApplePay(value: ConversationsMessagingIntegrationsAppleApplePay): void; resetApplePay(): void; get applePayInput(): ConversationsMessagingIntegrationsAppleApplePay; protected synthesizeAttributes(): { [name: string]: any; }; protected synthesizeHclAttributes(): { [name: string]: any; }; }