export interface IntegrationEnvStatus { key: string; label: string; required: boolean; configured: boolean; helpText?: string; } export interface ClientIntegrationStatus { platform: string; label: string; enabled: boolean; configured: boolean; details?: Record; error?: string; webhookUrl?: string; requiredEnvKeys?: IntegrationEnvStatus[]; } export interface SavedEnvVarsResult { saved: string[]; storage?: string; } export interface ClientIntegrationInstallation { id: string; platform: string; installationKey: string; teamId: string | null; teamName: string | null; enterpriseId: string | null; enterpriseName: string | null; scopes: string[]; ownerEmail: string; orgId: string | null; status: "connected" | "disconnected" | "revoked" | "error"; health: "unknown" | "healthy" | "degraded" | "revoked"; lastError: string | null; healthCheckedAt: number | null; tokenExpiresAt: number | null; updatedAt: number; } export interface ClientIntegrationScope { id: string; platform: string; tenantId: string; conversationId: string; conversationType: "channel" | "direct_message" | "group_direct_message"; trust: "trusted" | "guest" | "external_shared" | "unknown"; orgId: string | null; serviceOwnerEmail: string; defaultModel: string | null; policy: { requireMention: boolean; allowDirectMessages: boolean; allowGuests: boolean; allowExternalShared: boolean; allowUnknownTrust: boolean; }; updatedAt: number; } export interface ClientIntegrationUsageBudget { id: string; subjectType: "org" | "user" | "scope"; subjectId: string; period: "day" | "month"; limitMicros: number; thresholdBps: number; updatedAt: number; } export interface ClientIntegrationMemory { name: string; path: string; updatedAt: number; size: number; } export declare class IntegrationClientError extends Error { readonly status: number; constructor(message: string, status: number); } export declare function listIntegrationStatuses(): Promise; export declare function setIntegrationEnabled(platform: string, enabled: boolean): Promise; export declare function setupIntegration(platform: string): Promise; export declare function managedIntegrationOAuthUrl(platform: string, returnPath?: string): string; export declare function managedSlackAgentManifestUrl(): string; export declare function listManagedIntegrationInstallations(platform?: string): Promise; export declare function testManagedIntegrationInstallation(id: string): Promise; export declare function disconnectManagedIntegrationInstallation(id: string): Promise; export declare function listManagedIntegrationScopes(platform?: string): Promise; export declare function saveManagedIntegrationScope(scope: Omit): Promise; export declare function listManagedIntegrationBudgets(): Promise; export declare function saveManagedIntegrationBudget(input: { subject: { type: "org"; orgId: string; } | { type: "user"; userEmail: string; } | { type: "scope"; scope: { platform: string; tenantId: string; conversationId: string; }; }; period: "day" | "month"; limitMicros: number; thresholdBps?: number; }): Promise; export declare function listManagedIntegrationMemory(scopeId: string): Promise; export declare function forgetManagedIntegrationMemory(scopeId: string, name: string): Promise; export declare function listIntegrationEnvStatuses(): Promise; export declare function saveIntegrationEnvVars(vars: Array<{ key: string; value: string; }>): Promise; //# sourceMappingURL=api.d.ts.map