import { IPicGo, IStringKeyMap, IUploaderConfigItem, IUploaderConfigManager } from '../types';
export declare class UploaderConfigManager implements IUploaderConfigManager {
    private readonly ctx;
    constructor(ctx: IPicGo);
    private init;
    listUploaderTypes(): string[];
    getConfigList(type: string): IUploaderConfigItem[];
    getActiveConfig(type: string): IUploaderConfigItem | undefined;
    use(type: string, configName?: string): IUploaderConfigItem;
    createOrUpdate(type: string, configName?: string, configPatch?: IStringKeyMap<unknown>): IUploaderConfigItem;
    copy(type: string, configName: string, newConfigName: string): IUploaderConfigItem;
    rename(type: string, oldName: string, newName: string): IUploaderConfigItem;
    remove(type: string, configName: string): void;
    private migrateNormalizeAndSync;
    private assertUploaderTypeExists;
    private readTypeStore;
    private normalizeTypeStore;
    private generateDefaultName;
    private generateDefaultNameFromUsed;
    private ensureUniqueNameOrThrow;
    private findConfigByName;
    private getActiveConfigFromStore;
    private activate;
    private persistTypeAndMirror;
}
