export interface ISecretSettingsStore {
    getSetting(key: string): Promise<string | null> | string | null;
    setSetting(key: string, value: string): Promise<void> | void;
    deleteSetting(key: string): Promise<void> | void;
    getRawSecretSetting?: (key: string) => Promise<string | null> | string | null;
    setRawSecretSetting?: (key: string, value: string) => Promise<void> | void;
    deleteRawSecretSetting?: (key: string) => Promise<void> | void;
}
declare const secretSettingAliases: {
    readonly backupPassword: readonly ["backup_encryption_password"];
    readonly cloudflareToken: readonly ["cloudflareAPIKey"];
    readonly dcrouterGatewayApiToken: readonly ["externalGatewayApiToken"];
    readonly dcrouterManagedAdminApiToken: readonly [];
    readonly coretrafficAdminToken: readonly ["smartproxyAdminToken"];
};
type TCanonicalSecretSettingKey = keyof typeof secretSettingAliases;
export declare class SecretSettingsManager {
    private store;
    constructor(store: ISecretSettingsStore);
    isSecretKey(key: string): boolean;
    getCanonicalKeys(): TCanonicalSecretSettingKey[];
    get(key: string): Promise<string | null>;
    set(key: string, value: string | null): Promise<void>;
    has(key: string): Promise<boolean>;
    clear(key: string): Promise<void>;
    private resolveCanonicalKey;
    private getCandidateKeys;
    private getStoredSecret;
    private setStoredSecret;
    private deleteStoredSecret;
    private decodeStoredValue;
    private normalizeStoredSecret;
}
export {};
