import { J as Json, S as SdkModule } from '../../module-Bq-w9Ws5.js'; import 'graphql-request'; type ChannelPlatform = 'EMAIL' | 'SLACK' | 'TELEGRAM' | 'WHATSAPP' | 'SMS' | 'WEB' | 'PUSH' | 'IN_APP' | 'WEBHOOK' | 'DISCORD'; type ChannelStatus = 'ACTIVE' | 'INACTIVE' | 'ARCHIVED' | 'PENDING'; type ChannelType = 'NOTIFICATION' | 'BOT' | 'BOTH'; type ConnectionStatus = 'ACTIVE' | 'INACTIVE' | 'ERROR' | 'PENDING'; interface Channel { id: string; name: string; description?: string | null; platform: ChannelPlatform; type: ChannelType; status: ChannelStatus; organizationId: string; configuration?: Json; createdAt: string; updatedAt: string; } interface ChannelList { items: Channel[]; total: number; hasMore: boolean; } interface ChannelFilterInput { platform?: ChannelPlatform; status?: ChannelStatus; type?: ChannelType; organizationId?: string; search?: string; } interface ChannelPaginationInput { cursor?: string; limit?: number; offset?: number; } interface CreateChannelInput { name: string; platform: ChannelPlatform; type: ChannelType; organizationId: string; description?: string; configuration?: Json; } interface UpdateChannelInput { name?: string; description?: string; configuration?: Json; } interface SendMessageInput { channelId: string; recipientId?: string; externalUserId?: string; content: string; metadata?: Json; } interface MessageDeliveryResult { success: boolean; attemptId?: string | null; externalMessageId?: string | null; error?: string | null; } interface MessageDeliveryAttempt { id: string; channelId: string; status: string; attemptNumber: number; externalMessageId?: string | null; errorMessage?: string | null; createdAt: string; updatedAt: string; } interface DeliveryAttemptList { items: MessageDeliveryAttempt[]; hasMore: boolean; cursor?: string | null; } interface ChannelConnection { id: string; channelId: string; status: ConnectionStatus; externalAccountId?: string | null; externalAccountName?: string | null; createdAt: string; updatedAt: string; } interface ChannelConnectionList { items: ChannelConnection[]; hasMore: boolean; cursor?: string | null; } interface UserPlatformConnection { id: string; channelId: string; externalUserId?: string | null; internalUserId?: string | null; notificationsEnabled: boolean; createdAt: string; updatedAt: string; } interface UserPlatformConnectionList { items: UserPlatformConnection[]; hasMore: boolean; cursor?: string | null; } interface WebhookEvent { id: string; channelId: string; eventType: string; payload?: Json; processed: boolean; createdAt: string; } interface WebhookEventList { items: WebhookEvent[]; hasMore: boolean; cursor?: string | null; } interface ChannelsApi { list(filter?: ChannelFilterInput, pagination?: ChannelPaginationInput): Promise; get(id: string): Promise; create(input: CreateChannelInput): Promise; update(id: string, input: UpdateChannelInput): Promise; delete(id: string): Promise; send(input: SendMessageInput): Promise; deliveries(channelId: string, opts?: { cursor?: string; limit?: number; }): Promise; users(channelId: string, opts?: { cursor?: string; pagination?: ChannelPaginationInput; }): Promise; webhooks(channelId: string, opts?: { cursor?: string; limit?: number; }): Promise; connections(organizationId: string, opts?: { cursor?: string; pagination?: ChannelPaginationInput; }): Promise; } declare const channelsModule: SdkModule; export { type Channel, type ChannelConnection, type ChannelConnectionList, type ChannelFilterInput, type ChannelList, type ChannelPaginationInput, type ChannelPlatform, type ChannelStatus, type ChannelType, type ChannelsApi, type ConnectionStatus, type CreateChannelInput, type DeliveryAttemptList, type MessageDeliveryAttempt, type MessageDeliveryResult, type SendMessageInput, type UpdateChannelInput, type UserPlatformConnection, type UserPlatformConnectionList, type WebhookEvent, type WebhookEventList, channelsModule as default };