import type { Connection, Database, OAuthState } from '../db/types.js'; import { type BoundProviderSource } from '../provider-source.js'; export declare function ensureConnection(db: Database, input: { namespace: string; providerId: string; configuration?: Record; }, providers?: BoundProviderSource): Promise; export type StartAuthorizationResult = { authorizeUrl: string; expiresAt: Date; connection: Connection; }; export declare function startAuthorization(db: Database, env: object, input: { connection: Connection; redirectUri: string; clientMetadataUrl: string; returnTo?: string; scopes?: string[]; }, providers?: BoundProviderSource): Promise; export declare function completeAuthorization(db: Database, env: object, input: { providerId: string; code: string; state: string; issuer?: string; clientMetadataUrl: string; }, providers?: BoundProviderSource): Promise<{ connection: Connection; state: OAuthState; replayed: boolean; }>; export declare function failAuthorization(db: Database, input: { providerId: string; state: string; errorCode: string; errorMessage: string; }): Promise<{ state: OAuthState; replayed: boolean; }>; export declare function getAuthorizationState(db: Database, providerId: string, state: string): Promise; export type AccessConnectionResult = { path: string; secret: string; expiresAt: Date | null; scopes: string[]; refreshed: boolean; }; export declare function accessConnection(db: Database, env: object, input: { namespace: string; providerId: string; configuration?: Record; redirectUri: string; clientMetadataUrl: string; returnTo?: string; scopes?: string[]; }, providers?: BoundProviderSource): Promise; export declare function authorizeConnection(db: Database, env: object, input: { namespace: string; providerId: string; configuration?: Record; redirectUri: string; clientMetadataUrl: string; returnTo?: string; scopes?: string[]; }, providers?: BoundProviderSource): Promise; export declare function setConnectionSecret(db: Database, env: object, input: { namespace: string; providerId: string; value: string; }, providers?: BoundProviderSource): Promise; export declare function disconnectConnection(db: Database, env: object, connection: Connection, providers?: BoundProviderSource, redirectUri?: string, clientMetadataUrl?: string): Promise<{ deleted: boolean; revocation: 'revoked' | 'unsupported'; }>; //# sourceMappingURL=broker.d.ts.map