import { DataSourceManager } from '@midwayjs/core';
import { AliOssComponent } from './component';
import { Config, CreateInstanceOptions } from './types';
export declare class AliOssSourceManager<SourceName extends string = string> extends DataSourceManager<AliOssComponent | undefined> {
    private readonly sourceConfig;
    private readonly logger;
    baseDir: string;
    dataSource: Map<SourceName, AliOssComponent>;
    getDataSource: (dataSourceName: SourceName) => string extends SourceName ? AliOssComponent | undefined : AliOssComponent;
    createInstance: (config: Config, clientName: SourceName, options?: CreateInstanceOptions) => Promise<AliOssComponent | void>;
    init(): Promise<void>;
    /**
     * 创建单个实例
     */
    protected createDataSource(config: Config, dataSourceName: SourceName, cacheDataSource?: boolean): Promise<AliOssComponent | undefined>;
    getName(): string;
    protected checkConnected(dataSource: AliOssComponent): Promise<boolean>;
    destroyDataSource(): Promise<void>;
    protected getConfigByDbId(clientId: SourceName): Config | undefined;
}
//# sourceMappingURL=source-manager.d.ts.map