import { MetaFlowCategory, RegistrationStatus, WhatsAppDayOfWeek } from "./enums"; export interface Tag { key: string | undefined; value?: string | undefined; } export interface WabaPhoneNumberSetupFinalization { id: string | undefined; twoFactorPin: string | undefined; dataLocalizationRegion?: string | undefined; tags?: Tag[] | undefined; } export interface WhatsAppBusinessAccountEventDestination { eventDestinationArn: string | undefined; roleArn?: string | undefined; } export interface WabaSetupFinalization { id?: string | undefined; eventDestinations?: WhatsAppBusinessAccountEventDestination[] | undefined; tags?: Tag[] | undefined; } export interface WhatsAppSetupFinalization { associateInProgressToken: string | undefined; phoneNumbers: WabaPhoneNumberSetupFinalization[] | undefined; phoneNumberParent?: string | undefined; waba?: WabaSetupFinalization | undefined; } export interface WhatsAppSignupCallback { accessToken: string | undefined; callbackUrl?: string | undefined; } export interface AssociateWhatsAppBusinessAccountInput { signupCallback?: WhatsAppSignupCallback | undefined; setupFinalization?: WhatsAppSetupFinalization | undefined; } export interface WhatsAppPhoneNumberDetail { arn: string | undefined; phoneNumber: string | undefined; phoneNumberId: string | undefined; metaPhoneNumberId: string | undefined; displayPhoneNumberName: string | undefined; displayPhoneNumber: string | undefined; qualityRating: string | undefined; dataLocalizationRegion?: string | undefined; } export interface LinkedWhatsAppBusinessAccountIdMetaData { accountName?: string | undefined; registrationStatus?: RegistrationStatus | undefined; unregisteredWhatsAppPhoneNumbers?: WhatsAppPhoneNumberDetail[] | undefined; wabaId?: string | undefined; } export interface WhatsAppSignupCallbackResult { associateInProgressToken?: string | undefined; linkedAccountsWithIncompleteSetup?: | Record | undefined; } export interface AssociateWhatsAppBusinessAccountOutput { signupCallbackResult?: WhatsAppSignupCallbackResult | undefined; statusCode?: number | undefined; linkedWhatsAppBusinessAccountId?: string | undefined; } export interface CreateWhatsAppDatasetInput { id: string | undefined; } export interface CreateWhatsAppDatasetOutput { datasetId: string | undefined; } export interface CreateWhatsAppFlowInput { id: string | undefined; flowName: string | undefined; categories: MetaFlowCategory[] | undefined; flowJson?: Uint8Array | undefined; publish?: boolean | undefined; cloneFlowId?: string | undefined; endpointUri?: string | undefined; } export interface CreateWhatsAppFlowOutput { flowId?: string | undefined; validationErrors?: string[] | undefined; } export interface CreateWhatsAppMessageTemplateInput { templateDefinition: Uint8Array | undefined; id: string | undefined; } export interface CreateWhatsAppMessageTemplateOutput { metaTemplateId?: string | undefined; templateStatus?: string | undefined; category?: string | undefined; } export interface LibraryTemplateBodyInputs { addContactNumber?: boolean | undefined; addLearnMoreLink?: boolean | undefined; addSecurityRecommendation?: boolean | undefined; addTrackPackageLink?: boolean | undefined; codeExpirationMinutes?: number | undefined; } export interface LibraryTemplateButtonInput { type?: string | undefined; phoneNumber?: string | undefined; url?: Record | undefined; otpType?: string | undefined; zeroTapTermsAccepted?: boolean | undefined; supportedApps?: Record[] | undefined; } export interface MetaLibraryTemplate { templateName: string | undefined; libraryTemplateName: string | undefined; templateCategory: string | undefined; templateLanguage: string | undefined; libraryTemplateButtonInputs?: LibraryTemplateButtonInput[] | undefined; libraryTemplateBodyInputs?: LibraryTemplateBodyInputs | undefined; } export interface CreateWhatsAppMessageTemplateFromLibraryInput { metaLibraryTemplate: MetaLibraryTemplate | undefined; id: string | undefined; } export interface CreateWhatsAppMessageTemplateFromLibraryOutput { metaTemplateId?: string | undefined; templateStatus?: string | undefined; category?: string | undefined; } export interface S3File { bucketName: string | undefined; key: string | undefined; } export interface CreateWhatsAppMessageTemplateMediaInput { id: string | undefined; sourceS3File?: S3File | undefined; } export interface CreateWhatsAppMessageTemplateMediaOutput { metaHeaderHandle?: string | undefined; } export interface DeleteWhatsAppFlowInput { id: string | undefined; flowId: string | undefined; } export interface DeleteWhatsAppFlowOutput {} export interface DeleteWhatsAppMessageMediaInput { mediaId: string | undefined; originationPhoneNumberId: string | undefined; } export interface DeleteWhatsAppMessageMediaOutput { success?: boolean | undefined; } export interface DeleteWhatsAppMessageTemplateInput { metaTemplateId?: string | undefined; deleteAllLanguages?: boolean | undefined; id: string | undefined; templateName: string | undefined; } export interface DeleteWhatsAppMessageTemplateOutput {} export interface DeprecateWhatsAppFlowInput { id: string | undefined; flowId: string | undefined; } export interface DeprecateWhatsAppFlowOutput {} export interface DisassociateWhatsAppBusinessAccountInput { id: string | undefined; } export interface DisassociateWhatsAppBusinessAccountOutput {} export interface GetLinkedWhatsAppBusinessAccountInput { id: string | undefined; } export interface WhatsAppPhoneNumberSummary { arn: string | undefined; phoneNumber: string | undefined; phoneNumberId: string | undefined; metaPhoneNumberId: string | undefined; displayPhoneNumberName: string | undefined; displayPhoneNumber: string | undefined; qualityRating: string | undefined; dataLocalizationRegion?: string | undefined; } export interface LinkedWhatsAppBusinessAccount { arn: string | undefined; id: string | undefined; wabaId: string | undefined; registrationStatus: RegistrationStatus | undefined; linkDate: Date | undefined; wabaName: string | undefined; eventDestinations: WhatsAppBusinessAccountEventDestination[] | undefined; marketingMessagesOnboardingStatus?: string | undefined; datasetId?: string | undefined; phoneNumbers: WhatsAppPhoneNumberSummary[] | undefined; } export interface GetLinkedWhatsAppBusinessAccountOutput { account?: LinkedWhatsAppBusinessAccount | undefined; } export interface GetLinkedWhatsAppBusinessAccountPhoneNumberInput { id: string | undefined; } export interface WhatsAppTimeOfDay { hours: number | undefined; minutes: number | undefined; } export interface WhatsAppHolidayScheduleEntry { date: string | undefined; startTime: WhatsAppTimeOfDay | undefined; endTime: WhatsAppTimeOfDay | undefined; } export interface WhatsAppWeeklyOperatingHoursEntry { dayOfWeek: WhatsAppDayOfWeek | undefined; openTime: WhatsAppTimeOfDay | undefined; closeTime: WhatsAppTimeOfDay | undefined; } export interface WhatsAppCallHours { enabled: boolean | undefined; timezone: string | undefined; weeklyOperatingHours: WhatsAppWeeklyOperatingHoursEntry[] | undefined; holidaySchedule?: WhatsAppHolidayScheduleEntry[] | undefined; } export interface WhatsAppCallSettings { callEnabled: boolean | undefined; callHours?: WhatsAppCallHours | undefined; callIconVisibility?: string | undefined; callbackPermissionStatus?: string | undefined; } export interface GetLinkedWhatsAppBusinessAccountPhoneNumberOutput { phoneNumber?: WhatsAppPhoneNumberDetail | undefined; linkedWhatsAppBusinessAccountId?: string | undefined; callSettings?: WhatsAppCallSettings | undefined; } export interface GetWhatsAppBusinessPublicKeyInput { originationPhoneNumberId: string | undefined; } export interface GetWhatsAppBusinessPublicKeyOutput { businessPublicKey?: string | undefined; businessPublicKeySignatureStatus?: string | undefined; } export interface GetWhatsAppCallPermissionInput { originationPhoneNumberId: string | undefined; destinationPhoneNumber?: string | undefined; endUserBsuid?: string | undefined; } export interface WhatsAppCallPermissionLimit { timePeriod: string | undefined; maxAllowed: number | undefined; currentUsage: number | undefined; limitExpirationTime?: Date | undefined; } export interface WhatsAppCallPermissionAction { actionName: string | undefined; canPerformAction: boolean | undefined; limits: WhatsAppCallPermissionLimit[] | undefined; } export interface WhatsAppCallPermission { status: string | undefined; expirationTime?: Date | undefined; } export interface GetWhatsAppCallPermissionOutput { permission: WhatsAppCallPermission | undefined; actions: WhatsAppCallPermissionAction[] | undefined; } export interface GetWhatsAppFlowInput { id: string | undefined; flowId: string | undefined; } export interface MetaFlowApplicationInfo { link?: string | undefined; name: string | undefined; id: string | undefined; } export interface MetaFlowHealthEntity { entityType: string | undefined; id: string | undefined; canSendMessage: string | undefined; } export interface MetaFlowHealthStatus { canSendMessage: string | undefined; entities?: MetaFlowHealthEntity[] | undefined; } export interface MetaFlowPreviewInfo { previewUrl: string | undefined; expiresAt: string | undefined; } export interface MetaFlowWhatsAppBusinessAccountInfo { id: string | undefined; name: string | undefined; currency?: string | undefined; timezoneId?: string | undefined; messageTemplateNamespace?: string | undefined; } export interface GetWhatsAppFlowOutput { flowId: string | undefined; flowName: string | undefined; flowStatus: string | undefined; categories?: MetaFlowCategory[] | undefined; validationErrors?: string[] | undefined; jsonVersion?: string | undefined; dataApiVersion?: string | undefined; endpointUri?: string | undefined; preview?: MetaFlowPreviewInfo | undefined; whatsAppBusinessAccount?: MetaFlowWhatsAppBusinessAccountInfo | undefined; application?: MetaFlowApplicationInfo | undefined; healthStatus?: MetaFlowHealthStatus | undefined; } export interface GetWhatsAppFlowPreviewInput { id: string | undefined; flowId: string | undefined; invalidate?: boolean | undefined; } export interface GetWhatsAppFlowPreviewOutput { flowId: string | undefined; preview: MetaFlowPreviewInfo | undefined; } export interface S3PresignedUrl { url: string | undefined; headers: Record | undefined; } export interface GetWhatsAppMessageMediaInput { mediaId: string | undefined; originationPhoneNumberId: string | undefined; metadataOnly?: boolean | undefined; destinationS3PresignedUrl?: S3PresignedUrl | undefined; destinationS3File?: S3File | undefined; } export interface GetWhatsAppMessageMediaOutput { mimeType?: string | undefined; fileSize?: number | undefined; } export interface GetWhatsAppMessageTemplateInput { metaTemplateId?: string | undefined; id: string | undefined; templateName?: string | undefined; templateLanguageCode?: string | undefined; } export interface GetWhatsAppMessageTemplateOutput { template?: string | undefined; } export interface LibraryTemplateButtonList { type?: string | undefined; text?: string | undefined; phoneNumber?: string | undefined; url?: string | undefined; otpType?: string | undefined; zeroTapTermsAccepted?: boolean | undefined; supportedApps?: Record[] | undefined; } export interface ListLinkedWhatsAppBusinessAccountsInput { nextToken?: string | undefined; maxResults?: number | undefined; } export interface LinkedWhatsAppBusinessAccountSummary { arn: string | undefined; id: string | undefined; wabaId: string | undefined; registrationStatus: RegistrationStatus | undefined; linkDate: Date | undefined; wabaName: string | undefined; eventDestinations: WhatsAppBusinessAccountEventDestination[] | undefined; marketingMessagesOnboardingStatus?: string | undefined; datasetId?: string | undefined; } export interface ListLinkedWhatsAppBusinessAccountsOutput { linkedAccounts?: LinkedWhatsAppBusinessAccountSummary[] | undefined; nextToken?: string | undefined; } export interface ListWhatsAppFlowAssetsInput { id: string | undefined; flowId: string | undefined; nextToken?: string | undefined; maxResults?: number | undefined; } export interface MetaFlowAsset { name: string | undefined; assetType: string | undefined; downloadUrl: string | undefined; } export interface ListWhatsAppFlowAssetsOutput { flowAssets: MetaFlowAsset[] | undefined; nextToken?: string | undefined; } export interface ListWhatsAppFlowsInput { id: string | undefined; nextToken?: string | undefined; maxResults?: number | undefined; } export interface MetaFlowSummary { flowId: string | undefined; flowName: string | undefined; flowStatus: string | undefined; flowCategories: MetaFlowCategory[] | undefined; validationErrors: string[] | undefined; } export interface ListWhatsAppFlowsOutput { flows: MetaFlowSummary[] | undefined; nextToken?: string | undefined; } export interface ListWhatsAppMessageTemplatesInput { id: string | undefined; nextToken?: string | undefined; maxResults?: number | undefined; } export interface TemplateSummary { templateName?: string | undefined; metaTemplateId?: string | undefined; templateStatus?: string | undefined; templateQualityScore?: string | undefined; templateLanguage?: string | undefined; templateCategory?: string | undefined; } export interface ListWhatsAppMessageTemplatesOutput { templates?: TemplateSummary[] | undefined; nextToken?: string | undefined; } export interface ListWhatsAppTemplateLibraryInput { nextToken?: string | undefined; maxResults?: number | undefined; id: string | undefined; filters?: Record | undefined; } export interface MetaLibraryTemplateDefinition { templateName?: string | undefined; templateLanguage?: string | undefined; templateCategory?: string | undefined; templateTopic?: string | undefined; templateUseCase?: string | undefined; templateIndustry?: string[] | undefined; templateHeader?: string | undefined; templateBody?: string | undefined; templateButtons?: LibraryTemplateButtonList[] | undefined; templateId?: string | undefined; templateBodyExampleParams?: string[] | undefined; } export interface ListWhatsAppTemplateLibraryOutput { metaLibraryTemplates?: MetaLibraryTemplateDefinition[] | undefined; nextToken?: string | undefined; } export interface PublishWhatsAppFlowInput { id: string | undefined; flowId: string | undefined; } export interface PublishWhatsAppFlowOutput {} export interface PutWhatsAppBusinessAccountEventDestinationsInput { id: string | undefined; eventDestinations: WhatsAppBusinessAccountEventDestination[] | undefined; } export interface PutWhatsAppBusinessAccountEventDestinationsOutput {} export interface SendWhatsAppConversionEventInput { id: string | undefined; datasetId: string | undefined; eventData: Uint8Array | undefined; } export interface SendWhatsAppConversionEventOutput { requestId: string | undefined; } export interface UpdateWhatsAppFlowInput { id: string | undefined; flowId: string | undefined; flowName?: string | undefined; categories?: MetaFlowCategory[] | undefined; endpointUri?: string | undefined; metaAppId?: string | undefined; } export interface UpdateWhatsAppFlowOutput {} export interface UpdateWhatsAppFlowAssetsInput { id: string | undefined; flowId: string | undefined; flowJson: Uint8Array | undefined; } export interface UpdateWhatsAppFlowAssetsOutput { validationErrors?: string[] | undefined; } export interface UpdateWhatsAppMessageTemplateInput { id: string | undefined; metaTemplateId?: string | undefined; templateName?: string | undefined; templateLanguageCode?: string | undefined; parameterFormat?: string | undefined; templateCategory?: string | undefined; templateComponents?: Uint8Array | undefined; ctaUrlLinkTrackingOptedOut?: boolean | undefined; } export interface UpdateWhatsAppMessageTemplateOutput {} export interface PostWhatsAppMessageMediaInput { originationPhoneNumberId: string | undefined; sourceS3PresignedUrl?: S3PresignedUrl | undefined; sourceS3File?: S3File | undefined; } export interface PostWhatsAppMessageMediaOutput { mediaId?: string | undefined; } export interface PutWhatsAppBusinessPublicKeyInput { originationPhoneNumberId: string | undefined; businessPublicKey?: string | undefined; kmsKeyArn?: string | undefined; } export interface PutWhatsAppBusinessPublicKeyOutput {} export interface SendWhatsAppCallEventInput { originationPhoneNumberId: string | undefined; metaApiVersion: string | undefined; callEvent: Uint8Array | undefined; } export interface SendWhatsAppCallEventOutput { callId: string | undefined; } export interface SendWhatsAppMessageInput { originationPhoneNumberId: string | undefined; message: Uint8Array | undefined; metaApiVersion: string | undefined; } export interface SendWhatsAppMessageOutput { messageId?: string | undefined; } export interface UpdateLinkedWhatsAppBusinessAccountPhoneNumberInput { id: string | undefined; callSettings: WhatsAppCallSettings | undefined; } export interface UpdateLinkedWhatsAppBusinessAccountPhoneNumberOutput { phoneNumberId: string | undefined; } export interface ListTagsForResourceInput { resourceArn: string | undefined; } export interface ListTagsForResourceOutput { statusCode?: number | undefined; tags?: Tag[] | undefined; } export interface TagResourceInput { resourceArn: string | undefined; tags: Tag[] | undefined; } export interface TagResourceOutput { statusCode?: number | undefined; } export interface UntagResourceInput { resourceArn: string | undefined; tagKeys: string[] | undefined; } export interface UntagResourceOutput { statusCode?: number | undefined; }