/**
 * External API Key Cost Consent Management
 *
 * Two-layer consent system ensuring users are never surprised by extra API charges.
 * Free providers (claude-code, ollama) bypass consent. Paid providers require explicit permission.
 *
 * @since v1.0.265
 */
import type { ConsentStatus } from './types.js';
/** Providers that do NOT cost extra money */
export declare const FREE_PROVIDERS: ReadonlySet<string>;
/**
 * Check if a provider is external (costs money)
 */
export declare function isExternalProvider(provider: string): boolean;
/**
 * Check consent status for an external provider
 *
 * @returns 'granted' if allowed, 'denied' if blocked, 'ask' if user should be prompted
 */
export declare function checkConsent(provider: string, projectRoot: string): ConsentStatus;
/**
 * Grant standing consent for a provider (persists to config.json)
 */
export declare function grantStandingConsent(provider: string, projectRoot: string): void;
/**
 * Custom error for consent denied scenarios
 */
export declare class ExternalApiConsentDeniedError extends Error {
    readonly provider: string;
    constructor(provider: string);
}
//# sourceMappingURL=consent.d.ts.map