export interface OAuthConfig {
    enabled: boolean;
    mode: 'api-key' | 'jwt-hmac' | 'disabled';
    apiKey?: string;
    jwtSecret?: string;
    issuer?: string;
    audience?: string;
}
export interface OAuthValidationResult {
    valid: boolean;
    reason?: string;
}
export interface ConfigureOAuthArgs {
    action: 'status' | 'test';
    token?: string;
}
export type OAuthIntegration = 'figma' | 'github' | 'sentry' | 'supabase';
export type OAuthFlowType = 'oauth2-pkce' | 'guided-token';
export interface OAuthState {
    state: string;
    integration: OAuthIntegration;
    projectPath: string;
    codeVerifier: string;
    port: number;
    createdAt: string;
    expiresAt: string;
}
export interface OAuthToken {
    integration: OAuthIntegration;
    accessToken: string;
    refreshToken?: string;
    expiresAt?: string;
    scope?: string;
    storedAt: string;
}
export interface OAuthFlowResult {
    integration: OAuthIntegration;
    flowType: OAuthFlowType;
    authUrl?: string;
    guidedMessage?: string;
    port?: number;
    state?: string;
}
export interface StartOAuthFlowInput {
    projectPath: string;
    integration: OAuthIntegration;
}
export interface OAuthStatusInput {
    projectPath: string;
}
export interface OAuthCallbackParams {
    code: string;
    state: string;
}
//# sourceMappingURL=oauth.d.ts.map