import { J as Json, S as SdkModule } from '../../module-Bq-w9Ws5.cjs'; import 'graphql-request'; type ProviderCategory = 'ANALYTICS' | 'CALENDAR' | 'CLOUD_STORAGE' | 'COMMUNICATION' | 'CRM' | 'CUSTOM' | 'DEVELOPMENT' | 'EMAIL' | 'PAYMENT' | 'PRODUCTIVITY' | 'SOCIAL'; type AuthType = 'API_KEY' | 'BASIC_AUTH' | 'BEARER_TOKEN' | 'CUSTOM' | 'OAUTH1' | 'OAUTH2'; type ConnectionStatus = 'ACTIVE' | 'ERROR' | 'EXPIRED' | 'INACTIVE' | 'PENDING_AUTH' | 'REVOKED'; type LogLevel = 'DEBUG' | 'ERROR' | 'INFO' | 'WARNING'; type LogAction = 'API_CALL' | 'AUTH_COMPLETED' | 'AUTH_FAILED' | 'AUTH_INITIATED' | 'CONNECTION_CREATED' | 'CONNECTION_DELETED' | 'CONNECTION_UPDATED' | 'CREDENTIAL_UPDATED' | 'PERMISSION_CHANGED' | 'TOKEN_EXPIRED' | 'TOKEN_REFRESHED' | 'TOKEN_REVOKED'; interface IntegrationProvider { id: string; key: string; name: string; category: ProviderCategory; authType: AuthType; description?: string | null; icon?: string | null; color?: string | null; baseUrl?: string | null; isEnabled: boolean; isBuiltIn: boolean; defaultScopes: string[]; supportedFeatures: string[]; connectionCount: number; createdAt: string; updatedAt: string; } interface ProviderList { items: IntegrationProvider[]; total: number; hasMore: boolean; } interface ProviderFilterInput { authType?: AuthType; category?: ProviderCategory; isBuiltIn?: boolean; isEnabled?: boolean; search?: string; } interface IntegrationConnection { id: string; name: string; description?: string | null; providerId: string; status: ConnectionStatus; config?: Json; errorMessage?: string | null; externalAccountEmail?: string | null; externalAccountId?: string | null; externalAccountName?: string | null; grantedScopes: string[]; channelId?: string | null; organizationId?: string | null; workspaceId?: string | null; createdBy: string; createdAt: string; updatedAt: string; lastUsedAt?: string | null; } interface ConnectionList { items: IntegrationConnection[]; total: number; hasMore: boolean; } interface ConnectionFilterInput { providerId?: string; providerCategory?: ProviderCategory; status?: ConnectionStatus; search?: string; } interface CreateConnectionInput { name: string; providerId: string; description?: string; config?: Json; credentialSecretId?: string; managedSecretName?: string; vaultId?: string; } interface IntegrationLog { id: string; action: LogAction; level: LogLevel; message: string; connectionId?: string | null; actorId?: string | null; metadata?: Json; errorDetails?: Json; createdAt: string; } interface LogList { items: IntegrationLog[]; total: number; hasMore: boolean; } interface IntegrationsPaginationInput { cursor?: string; limit?: number; offset?: number; } interface UpdateConnectionInput { name?: string; description?: string; config?: Json; } interface ConnectionTestResult { success: boolean; message: string; latencyMs?: number | null; } interface OAuthInitiationResult { redirectUrl: string; state: string; } interface ApiKeyAuthInput { connectionId: string; apiKey: string; } interface BasicAuthInput { connectionId: string; username: string; password: string; } interface BearerTokenAuthInput { connectionId: string; token: string; } interface InitiateOAuthInput { connectionId: string; redirectUri: string; scopes?: string[]; } interface CompleteOAuthInput { connectionId: string; code: string; redirectUri: string; state: string; } interface LogFilterInput { action?: LogAction; connectionId?: string; level?: LogLevel; startDate?: string; endDate?: string; } interface IntegrationConnectionTagAssignment { id: string; entityId: string; entityType: string; tagId: string; source: string; assignedAt?: string | null; assignedBy?: string | null; metadata?: Json; validFrom?: string | null; validTo?: string | null; } interface TagConnectionInput { entityId: string; tagId: string; source?: string; metadata?: Json; validFrom?: string; validTo?: string; } interface UntagConnectionInput { entityId: string; tagId: string; } interface ReplaceConnectionTagsInput { entityId: string; tagIds: string[]; } interface GetConnectionTagsInput { entityId: string; } interface ConnectionsApi { list(filter?: ConnectionFilterInput, pagination?: IntegrationsPaginationInput): Promise; get(id: string): Promise; add(input: CreateConnectionInput): Promise; delete(id: string, deleteVaultSecret?: boolean): Promise; update(id: string, input: UpdateConnectionInput): Promise; revoke(connectionId: string): Promise; test(connectionId: string): Promise; linkToChannel(args: { channelId: string; connectionId: string; organizationId: string; }): Promise; refreshToken(connectionId: string): Promise; } interface IntegrationsAuthApi { apiKey(input: ApiKeyAuthInput): Promise; basic(input: BasicAuthInput): Promise; bearer(input: BearerTokenAuthInput): Promise; oauthInitiate(input: InitiateOAuthInput): Promise; oauthComplete(input: CompleteOAuthInput): Promise; } interface ProvidersApi { list(filter?: ProviderFilterInput, pagination?: IntegrationsPaginationInput): Promise; get(id: string): Promise; getByKey(key: string): Promise; catalog(pagination?: IntegrationsPaginationInput): Promise; connectionsByProvider(providerId: string, pagination?: IntegrationsPaginationInput): Promise; enable(id: string): Promise; disable(id: string): Promise; } interface ConnectionTagsApi { add(input: TagConnectionInput): Promise; remove(input: UntagConnectionInput): Promise; replace(input: ReplaceConnectionTagsInput): Promise; list(input: GetConnectionTagsInput): Promise; } interface IntegrationsApi { providers: ProvidersApi; connections: ConnectionsApi; auth: IntegrationsAuthApi; tags: ConnectionTagsApi; logs(connectionId: string, pagination?: IntegrationsPaginationInput): Promise; integrationLogs(filter?: LogFilterInput, pagination?: IntegrationsPaginationInput): Promise; } declare const integrationsModule: SdkModule; export { type ApiKeyAuthInput, type AuthType, type BasicAuthInput, type BearerTokenAuthInput, type CompleteOAuthInput, type ConnectionFilterInput, type ConnectionList, type ConnectionStatus, type ConnectionTagsApi, type ConnectionTestResult, type ConnectionsApi, type CreateConnectionInput, type GetConnectionTagsInput, type InitiateOAuthInput, type IntegrationConnection, type IntegrationConnectionTagAssignment, type IntegrationLog, type IntegrationProvider, type IntegrationsApi, type IntegrationsAuthApi, type IntegrationsPaginationInput, type LogAction, type LogFilterInput, type LogLevel, type LogList, type OAuthInitiationResult, type ProviderCategory, type ProviderFilterInput, type ProviderList, type ProvidersApi, type ReplaceConnectionTagsInput, type TagConnectionInput, type UntagConnectionInput, type UpdateConnectionInput, integrationsModule as default };