import { AllowNotifications, ChannelMembershipType, ChannelMessagePersistenceType, ChannelMessageStatus, ChannelMessageType, ChannelMode, ChannelPrivacy, ErrorCode, ExpirationCriterion, FallbackAction, InvocationType, MessagingDataType, NetworkType, PushNotificationType, SearchFieldKey, SearchFieldOperator, SortOrder, } from "./enums"; export interface AppInstanceUserMembershipSummary { Type?: ChannelMembershipType | undefined; ReadMarkerTimestamp?: Date | undefined; SubChannelId?: string | undefined; } export interface AssociateChannelFlowRequest { ChannelArn: string | undefined; ChannelFlowArn: string | undefined; ChimeBearer: string | undefined; } export interface Identity { Arn?: string | undefined; Name?: string | undefined; } export interface BatchChannelMemberships { InvitedBy?: Identity | undefined; Type?: ChannelMembershipType | undefined; Members?: Identity[] | undefined; ChannelArn?: string | undefined; SubChannelId?: string | undefined; } export interface BatchCreateChannelMembershipRequest { ChannelArn: string | undefined; Type?: ChannelMembershipType | undefined; MemberArns: string[] | undefined; ChimeBearer: string | undefined; SubChannelId?: string | undefined; } export interface BatchCreateChannelMembershipError { MemberArn?: string | undefined; ErrorCode?: ErrorCode | undefined; ErrorMessage?: string | undefined; } export interface BatchCreateChannelMembershipResponse { BatchChannelMemberships?: BatchChannelMemberships | undefined; Errors?: BatchCreateChannelMembershipError[] | undefined; } export interface ElasticChannelConfiguration { MaximumSubChannels: number | undefined; TargetMembershipsPerSubChannel: number | undefined; MinimumMembershipPercentage: number | undefined; } export interface ExpirationSettings { ExpirationDays: number | undefined; ExpirationCriterion: ExpirationCriterion | undefined; } export interface Channel { Name?: string | undefined; ChannelArn?: string | undefined; Mode?: ChannelMode | undefined; Privacy?: ChannelPrivacy | undefined; Metadata?: string | undefined; CreatedBy?: Identity | undefined; CreatedTimestamp?: Date | undefined; LastMessageTimestamp?: Date | undefined; LastUpdatedTimestamp?: Date | undefined; ChannelFlowArn?: string | undefined; ElasticChannelConfiguration?: ElasticChannelConfiguration | undefined; ExpirationSettings?: ExpirationSettings | undefined; } export interface ChannelAssociatedWithFlowSummary { Name?: string | undefined; ChannelArn?: string | undefined; Mode?: ChannelMode | undefined; Privacy?: ChannelPrivacy | undefined; Metadata?: string | undefined; } export interface ChannelBan { Member?: Identity | undefined; ChannelArn?: string | undefined; CreatedTimestamp?: Date | undefined; CreatedBy?: Identity | undefined; } export interface ChannelBanSummary { Member?: Identity | undefined; } export interface LambdaConfiguration { ResourceArn: string | undefined; InvocationType: InvocationType | undefined; } export interface ProcessorConfiguration { Lambda: LambdaConfiguration | undefined; } export interface Processor { Name: string | undefined; Configuration: ProcessorConfiguration | undefined; ExecutionOrder: number | undefined; FallbackAction: FallbackAction | undefined; } export interface ChannelFlow { ChannelFlowArn?: string | undefined; Processors?: Processor[] | undefined; Name?: string | undefined; CreatedTimestamp?: Date | undefined; LastUpdatedTimestamp?: Date | undefined; } export interface MessageAttributeValue { StringValues?: string[] | undefined; } export interface PushNotificationConfiguration { Title?: string | undefined; Body?: string | undefined; Type?: PushNotificationType | undefined; } export interface ChannelMessageCallback { MessageId: string | undefined; Content?: string | undefined; Metadata?: string | undefined; PushNotification?: PushNotificationConfiguration | undefined; MessageAttributes?: Record | undefined; SubChannelId?: string | undefined; ContentType?: string | undefined; } export interface ChannelFlowCallbackRequest { CallbackId?: string | undefined; ChannelArn: string | undefined; DeleteResource?: boolean | undefined; ChannelMessage: ChannelMessageCallback | undefined; } export interface ChannelFlowCallbackResponse { ChannelArn?: string | undefined; CallbackId?: string | undefined; } export interface ChannelFlowSummary { ChannelFlowArn?: string | undefined; Name?: string | undefined; Processors?: Processor[] | undefined; } export interface ChannelMembership { InvitedBy?: Identity | undefined; Type?: ChannelMembershipType | undefined; Member?: Identity | undefined; ChannelArn?: string | undefined; CreatedTimestamp?: Date | undefined; LastUpdatedTimestamp?: Date | undefined; SubChannelId?: string | undefined; } export interface ChannelSummary { Name?: string | undefined; ChannelArn?: string | undefined; Mode?: ChannelMode | undefined; Privacy?: ChannelPrivacy | undefined; Metadata?: string | undefined; LastMessageTimestamp?: Date | undefined; } export interface ChannelMembershipForAppInstanceUserSummary { ChannelSummary?: ChannelSummary | undefined; AppInstanceUserMembershipSummary?: | AppInstanceUserMembershipSummary | undefined; } export interface PushNotificationPreferences { AllowNotifications: AllowNotifications | undefined; FilterRule?: string | undefined; } export interface ChannelMembershipPreferences { PushNotifications?: PushNotificationPreferences | undefined; } export interface ChannelMembershipSummary { Member?: Identity | undefined; } export interface ChannelMessageStatusStructure { Value?: ChannelMessageStatus | undefined; Detail?: string | undefined; } export interface Target { MemberArn?: string | undefined; } export interface ChannelMessage { ChannelArn?: string | undefined; MessageId?: string | undefined; Content?: string | undefined; Metadata?: string | undefined; Type?: ChannelMessageType | undefined; CreatedTimestamp?: Date | undefined; LastEditedTimestamp?: Date | undefined; LastUpdatedTimestamp?: Date | undefined; Sender?: Identity | undefined; Redacted?: boolean | undefined; Persistence?: ChannelMessagePersistenceType | undefined; Status?: ChannelMessageStatusStructure | undefined; MessageAttributes?: Record | undefined; SubChannelId?: string | undefined; ContentType?: string | undefined; Target?: Target[] | undefined; } export interface ChannelMessageSummary { MessageId?: string | undefined; Content?: string | undefined; Metadata?: string | undefined; Type?: ChannelMessageType | undefined; CreatedTimestamp?: Date | undefined; LastUpdatedTimestamp?: Date | undefined; LastEditedTimestamp?: Date | undefined; Sender?: Identity | undefined; Redacted?: boolean | undefined; Status?: ChannelMessageStatusStructure | undefined; MessageAttributes?: Record | undefined; ContentType?: string | undefined; Target?: Target[] | undefined; } export interface ChannelModeratedByAppInstanceUserSummary { ChannelSummary?: ChannelSummary | undefined; } export interface ChannelModerator { Moderator?: Identity | undefined; ChannelArn?: string | undefined; CreatedTimestamp?: Date | undefined; CreatedBy?: Identity | undefined; } export interface ChannelModeratorSummary { Moderator?: Identity | undefined; } export interface Tag { Key: string | undefined; Value: string | undefined; } export interface CreateChannelRequest { AppInstanceArn: string | undefined; Name: string | undefined; Mode?: ChannelMode | undefined; Privacy?: ChannelPrivacy | undefined; Metadata?: string | undefined; ClientRequestToken?: string | undefined; Tags?: Tag[] | undefined; ChimeBearer: string | undefined; ChannelId?: string | undefined; MemberArns?: string[] | undefined; ModeratorArns?: string[] | undefined; ElasticChannelConfiguration?: ElasticChannelConfiguration | undefined; ExpirationSettings?: ExpirationSettings | undefined; } export interface CreateChannelResponse { ChannelArn?: string | undefined; } export interface CreateChannelBanRequest { ChannelArn: string | undefined; MemberArn: string | undefined; ChimeBearer: string | undefined; } export interface CreateChannelBanResponse { ChannelArn?: string | undefined; Member?: Identity | undefined; } export interface CreateChannelFlowRequest { AppInstanceArn: string | undefined; Processors: Processor[] | undefined; Name: string | undefined; Tags?: Tag[] | undefined; ClientRequestToken?: string | undefined; } export interface CreateChannelFlowResponse { ChannelFlowArn?: string | undefined; } export interface CreateChannelMembershipRequest { ChannelArn: string | undefined; MemberArn: string | undefined; Type: ChannelMembershipType | undefined; ChimeBearer: string | undefined; SubChannelId?: string | undefined; } export interface CreateChannelMembershipResponse { ChannelArn?: string | undefined; Member?: Identity | undefined; SubChannelId?: string | undefined; } export interface CreateChannelModeratorRequest { ChannelArn: string | undefined; ChannelModeratorArn: string | undefined; ChimeBearer: string | undefined; } export interface CreateChannelModeratorResponse { ChannelArn?: string | undefined; ChannelModerator?: Identity | undefined; } export interface DeleteChannelRequest { ChannelArn: string | undefined; ChimeBearer: string | undefined; } export interface DeleteChannelBanRequest { ChannelArn: string | undefined; MemberArn: string | undefined; ChimeBearer: string | undefined; } export interface DeleteChannelFlowRequest { ChannelFlowArn: string | undefined; } export interface DeleteChannelMembershipRequest { ChannelArn: string | undefined; MemberArn: string | undefined; ChimeBearer: string | undefined; SubChannelId?: string | undefined; } export interface DeleteChannelMessageRequest { ChannelArn: string | undefined; MessageId: string | undefined; ChimeBearer: string | undefined; SubChannelId?: string | undefined; } export interface DeleteChannelModeratorRequest { ChannelArn: string | undefined; ChannelModeratorArn: string | undefined; ChimeBearer: string | undefined; } export interface DeleteMessagingStreamingConfigurationsRequest { AppInstanceArn: string | undefined; } export interface DescribeChannelRequest { ChannelArn: string | undefined; ChimeBearer: string | undefined; } export interface DescribeChannelResponse { Channel?: Channel | undefined; } export interface DescribeChannelBanRequest { ChannelArn: string | undefined; MemberArn: string | undefined; ChimeBearer: string | undefined; } export interface DescribeChannelBanResponse { ChannelBan?: ChannelBan | undefined; } export interface DescribeChannelFlowRequest { ChannelFlowArn: string | undefined; } export interface DescribeChannelFlowResponse { ChannelFlow?: ChannelFlow | undefined; } export interface DescribeChannelMembershipRequest { ChannelArn: string | undefined; MemberArn: string | undefined; ChimeBearer: string | undefined; SubChannelId?: string | undefined; } export interface DescribeChannelMembershipResponse { ChannelMembership?: ChannelMembership | undefined; } export interface DescribeChannelMembershipForAppInstanceUserRequest { ChannelArn: string | undefined; AppInstanceUserArn: string | undefined; ChimeBearer: string | undefined; } export interface DescribeChannelMembershipForAppInstanceUserResponse { ChannelMembership?: ChannelMembershipForAppInstanceUserSummary | undefined; } export interface DescribeChannelModeratedByAppInstanceUserRequest { ChannelArn: string | undefined; AppInstanceUserArn: string | undefined; ChimeBearer: string | undefined; } export interface DescribeChannelModeratedByAppInstanceUserResponse { Channel?: ChannelModeratedByAppInstanceUserSummary | undefined; } export interface DescribeChannelModeratorRequest { ChannelArn: string | undefined; ChannelModeratorArn: string | undefined; ChimeBearer: string | undefined; } export interface DescribeChannelModeratorResponse { ChannelModerator?: ChannelModerator | undefined; } export interface DisassociateChannelFlowRequest { ChannelArn: string | undefined; ChannelFlowArn: string | undefined; ChimeBearer: string | undefined; } export interface GetChannelMembershipPreferencesRequest { ChannelArn: string | undefined; MemberArn: string | undefined; ChimeBearer: string | undefined; } export interface GetChannelMembershipPreferencesResponse { ChannelArn?: string | undefined; Member?: Identity | undefined; Preferences?: ChannelMembershipPreferences | undefined; } export interface GetChannelMessageRequest { ChannelArn: string | undefined; MessageId: string | undefined; ChimeBearer: string | undefined; SubChannelId?: string | undefined; } export interface GetChannelMessageResponse { ChannelMessage?: ChannelMessage | undefined; } export interface GetChannelMessageStatusRequest { ChannelArn: string | undefined; MessageId: string | undefined; ChimeBearer: string | undefined; SubChannelId?: string | undefined; } export interface GetChannelMessageStatusResponse { Status?: ChannelMessageStatusStructure | undefined; } export interface GetMessagingSessionEndpointRequest { NetworkType?: NetworkType | undefined; } export interface MessagingSessionEndpoint { Url?: string | undefined; } export interface GetMessagingSessionEndpointResponse { Endpoint?: MessagingSessionEndpoint | undefined; } export interface GetMessagingStreamingConfigurationsRequest { AppInstanceArn: string | undefined; } export interface StreamingConfiguration { DataType: MessagingDataType | undefined; ResourceArn: string | undefined; } export interface GetMessagingStreamingConfigurationsResponse { StreamingConfigurations?: StreamingConfiguration[] | undefined; } export interface ListChannelBansRequest { ChannelArn: string | undefined; MaxResults?: number | undefined; NextToken?: string | undefined; ChimeBearer: string | undefined; } export interface ListChannelBansResponse { ChannelArn?: string | undefined; NextToken?: string | undefined; ChannelBans?: ChannelBanSummary[] | undefined; } export interface ListChannelFlowsRequest { AppInstanceArn: string | undefined; MaxResults?: number | undefined; NextToken?: string | undefined; } export interface ListChannelFlowsResponse { ChannelFlows?: ChannelFlowSummary[] | undefined; NextToken?: string | undefined; } export interface ListChannelMembershipsRequest { ChannelArn: string | undefined; Type?: ChannelMembershipType | undefined; MaxResults?: number | undefined; NextToken?: string | undefined; ChimeBearer: string | undefined; SubChannelId?: string | undefined; } export interface ListChannelMembershipsResponse { ChannelArn?: string | undefined; ChannelMemberships?: ChannelMembershipSummary[] | undefined; NextToken?: string | undefined; } export interface ListChannelMembershipsForAppInstanceUserRequest { AppInstanceUserArn?: string | undefined; MaxResults?: number | undefined; NextToken?: string | undefined; ChimeBearer: string | undefined; } export interface ListChannelMembershipsForAppInstanceUserResponse { ChannelMemberships?: ChannelMembershipForAppInstanceUserSummary[] | undefined; NextToken?: string | undefined; } export interface ListChannelMessagesRequest { ChannelArn: string | undefined; SortOrder?: SortOrder | undefined; NotBefore?: Date | undefined; NotAfter?: Date | undefined; MaxResults?: number | undefined; NextToken?: string | undefined; ChimeBearer: string | undefined; SubChannelId?: string | undefined; } export interface ListChannelMessagesResponse { ChannelArn?: string | undefined; NextToken?: string | undefined; ChannelMessages?: ChannelMessageSummary[] | undefined; SubChannelId?: string | undefined; } export interface ListChannelModeratorsRequest { ChannelArn: string | undefined; MaxResults?: number | undefined; NextToken?: string | undefined; ChimeBearer: string | undefined; } export interface ListChannelModeratorsResponse { ChannelArn?: string | undefined; NextToken?: string | undefined; ChannelModerators?: ChannelModeratorSummary[] | undefined; } export interface ListChannelsRequest { AppInstanceArn: string | undefined; Privacy?: ChannelPrivacy | undefined; MaxResults?: number | undefined; NextToken?: string | undefined; ChimeBearer: string | undefined; } export interface ListChannelsResponse { Channels?: ChannelSummary[] | undefined; NextToken?: string | undefined; } export interface ListChannelsAssociatedWithChannelFlowRequest { ChannelFlowArn: string | undefined; MaxResults?: number | undefined; NextToken?: string | undefined; } export interface ListChannelsAssociatedWithChannelFlowResponse { Channels?: ChannelAssociatedWithFlowSummary[] | undefined; NextToken?: string | undefined; } export interface ListChannelsModeratedByAppInstanceUserRequest { AppInstanceUserArn?: string | undefined; MaxResults?: number | undefined; NextToken?: string | undefined; ChimeBearer: string | undefined; } export interface ListChannelsModeratedByAppInstanceUserResponse { Channels?: ChannelModeratedByAppInstanceUserSummary[] | undefined; NextToken?: string | undefined; } export interface ListSubChannelsRequest { ChannelArn: string | undefined; ChimeBearer: string | undefined; MaxResults?: number | undefined; NextToken?: string | undefined; } export interface SubChannelSummary { SubChannelId?: string | undefined; MembershipCount?: number | undefined; } export interface ListSubChannelsResponse { ChannelArn?: string | undefined; SubChannels?: SubChannelSummary[] | undefined; NextToken?: string | undefined; } export interface ListTagsForResourceRequest { ResourceARN: string | undefined; } export interface ListTagsForResourceResponse { Tags?: Tag[] | undefined; } export interface PutChannelExpirationSettingsRequest { ChannelArn: string | undefined; ChimeBearer?: string | undefined; ExpirationSettings?: ExpirationSettings | undefined; } export interface PutChannelExpirationSettingsResponse { ChannelArn?: string | undefined; ExpirationSettings?: ExpirationSettings | undefined; } export interface PutChannelMembershipPreferencesRequest { ChannelArn: string | undefined; MemberArn: string | undefined; ChimeBearer: string | undefined; Preferences: ChannelMembershipPreferences | undefined; } export interface PutChannelMembershipPreferencesResponse { ChannelArn?: string | undefined; Member?: Identity | undefined; Preferences?: ChannelMembershipPreferences | undefined; } export interface PutMessagingStreamingConfigurationsRequest { AppInstanceArn: string | undefined; StreamingConfigurations: StreamingConfiguration[] | undefined; } export interface PutMessagingStreamingConfigurationsResponse { StreamingConfigurations?: StreamingConfiguration[] | undefined; } export interface RedactChannelMessageRequest { ChannelArn: string | undefined; MessageId: string | undefined; ChimeBearer: string | undefined; SubChannelId?: string | undefined; } export interface RedactChannelMessageResponse { ChannelArn?: string | undefined; MessageId?: string | undefined; SubChannelId?: string | undefined; } export interface SearchField { Key: SearchFieldKey | undefined; Values: string[] | undefined; Operator: SearchFieldOperator | undefined; } export interface SearchChannelsRequest { ChimeBearer?: string | undefined; Fields: SearchField[] | undefined; MaxResults?: number | undefined; NextToken?: string | undefined; } export interface SearchChannelsResponse { Channels?: ChannelSummary[] | undefined; NextToken?: string | undefined; } export interface SendChannelMessageRequest { ChannelArn: string | undefined; Content: string | undefined; Type: ChannelMessageType | undefined; Persistence: ChannelMessagePersistenceType | undefined; Metadata?: string | undefined; ClientRequestToken?: string | undefined; ChimeBearer: string | undefined; PushNotification?: PushNotificationConfiguration | undefined; MessageAttributes?: Record | undefined; SubChannelId?: string | undefined; ContentType?: string | undefined; Target?: Target[] | undefined; } export interface SendChannelMessageResponse { ChannelArn?: string | undefined; MessageId?: string | undefined; Status?: ChannelMessageStatusStructure | undefined; SubChannelId?: string | undefined; } export interface TagResourceRequest { ResourceARN: string | undefined; Tags: Tag[] | undefined; } export interface UntagResourceRequest { ResourceARN: string | undefined; TagKeys: string[] | undefined; } export interface UpdateChannelRequest { ChannelArn: string | undefined; Name?: string | undefined; Mode?: ChannelMode | undefined; Metadata?: string | undefined; ChimeBearer: string | undefined; } export interface UpdateChannelResponse { ChannelArn?: string | undefined; } export interface UpdateChannelFlowRequest { ChannelFlowArn: string | undefined; Processors: Processor[] | undefined; Name: string | undefined; } export interface UpdateChannelFlowResponse { ChannelFlowArn?: string | undefined; } export interface UpdateChannelMessageRequest { ChannelArn: string | undefined; MessageId: string | undefined; Content: string | undefined; Metadata?: string | undefined; ChimeBearer: string | undefined; SubChannelId?: string | undefined; ContentType?: string | undefined; } export interface UpdateChannelMessageResponse { ChannelArn?: string | undefined; MessageId?: string | undefined; Status?: ChannelMessageStatusStructure | undefined; SubChannelId?: string | undefined; } export interface UpdateChannelReadMarkerRequest { ChannelArn: string | undefined; ChimeBearer: string | undefined; } export interface UpdateChannelReadMarkerResponse { ChannelArn?: string | undefined; }