import { type AccessStorer, type AccessValidator } from '../access';
import type { AccessBuilder } from './builder';
/**
 * 访问存储器构建器
 */
export declare class AccessStorerBuilder implements AccessBuilder<AccessStorer> {
    /**
     * 认证与授权存储
     * @private
     */
    private _aaaStorage?;
    /**
     * 签名存储
     * @private
     */
    private _signStorage?;
    /**
     * 认证健
     * @private
     */
    private _authenticationKey?;
    /**
     * 授权健
     * @private
     */
    private _authorizationKey?;
    /**
     * 签名健
     * @private
     */
    private _signatureKey?;
    /**
     * 认证验证器
     * @private
     */
    private _authenticationValidator?;
    /**
     * 设置认证与授权存储
     * @param aaaStorage 认证与授权存储
     */
    aaaStorage(aaaStorage: Storage): AccessStorerBuilder;
    /**
     * 设置签名存储
     * @param signStorage 签名存储
     */
    signStorage(signStorage: Storage): AccessStorerBuilder;
    /**
     * 设置认证健
     * @param authenticationKey 认证健
     */
    authenticationKey(authenticationKey: string): AccessStorerBuilder;
    /**
     * 设置授权健
     * @param authorizationKey 授权健
     */
    authorizationKey(authorizationKey: string): AccessStorerBuilder;
    /**
     * 设置签名健
     * @param signatureKey 签名健
     */
    signatureKey(signatureKey: string): AccessStorerBuilder;
    /**
     * 设置认证验证器
     * @param authenticationValidator 认证验证器
     */
    authenticationValidator(authenticationValidator: AccessValidator): AccessStorerBuilder;
    /**
     * 设置本地存储
     */
    local(): AccessStorerBuilder;
    /**
     * 设置会话存储
     */
    session(): AccessStorerBuilder;
    /**
     * 设置混合存储（认证与授权存储为本地存储，签名存储为会话存储）
     */
    blend(): AccessStorerBuilder;
    /**
     * 构建
     */
    build(): AccessStorer;
}
