export interface CannerStoreConfig {
    storage: StorageServiceOptions;
    properties: CannnerDriverProfileProperties;
    profile: CannerDriverProfileOptions;
}
export interface CannnerDriverProfileProperties {
    rootUserId?: string;
}
export interface CannerDriverProfileOptions {
    user?: string;
    password?: string;
    host?: string;
    port?: number;
    max?: number;
}
export interface StorageServiceOptions {
    provider?: string;
    minioUrl?: string;
    minioSSL?: boolean;
    minioPort?: number;
    minioBucket?: string;
    minioAccessKey?: string;
    minioSecretKey?: string;
    /**
     * Azure Provider options: we still need to set some env @azure/identity needed.
     * Azure used the DefaultAzureCredential to create credentials beside the below options need declare.
     * You could also refer https://github.com/Canner/canner-storage for some part way from env.
     * Otherwise, you could also see full different way to create credentials from https://www.npmjs.com/package/@azure/identity.
     * */
    azureBucket?: string;
    azureAccountName?: string;
    /**
     * AWS Provider options: we still need to set some env AWS SDK needed.
     * AWS used the CredentialProviderChain to create credentials beside the below options need declare.
     * Please refer to our @canner/canner-storage for details: https://github.com/Canner/canner-storage
     */
    awsBucket?: string;
    /**
     * GCP Provider options: we still need to set some env GCP SDK needed
     * GCP used the GoogleAuth to create auth beside the below options need declare.
     * Please refer https://github.com/googleapis/google-api-nodejs-client#authentication-and-authorization to set credentials files path by "GOOGLE_APPLICATION_CREDENTIALS" env
     * Or you could also use another env "GCP_KEY_FILE_PATH" by referring https://github.com/Canner/canner-storage
     */
    gcpBucket?: string;
}
/**
 * Get canner persistence store used environment variable config
 * @returns CannerStoreConfig
 */
export declare const getEnvConfig: () => CannerStoreConfig;
