import { BaseCacheDataHandler, CacheDataError, IdentifierService, IInfo, ILogger, LoadType } from "@ic-wallet-middleware/common";
import { TokenLocalCache } from "../../../repositories";
import { CkERC20Wrapper } from "../../../wrappers/ckERC20/ckERC20Wrapper";
import { ManualTokenWrapper } from "../../../wrappers/default/manualTokenWrapper";
import { SnsWrapper } from "../../../wrappers/SNSs/snsWrapper";
import { TokenModel } from "../../../wrappers/tokenModel";
export interface GetTokenInfo extends IInfo {
}
export interface GetTokenResult {
    TokenList: TokenModel[];
}
export declare class GetTokenSNSCacheHandler extends BaseCacheDataHandler<GetTokenInfo, GetTokenResult> {
    private tokenCacheRepository;
    private identifierService;
    private snsWrapper;
    private ckERC20Wrapper;
    private manualTokenWrapper;
    constructor(logger: ILogger, tokenCacheRepository: TokenLocalCache, identifierService: IdentifierService, snsWrapper: SnsWrapper, ckERC20Wrapper: CkERC20Wrapper, manualTokenWrapper: ManualTokenWrapper);
    validate(form: GetTokenInfo): Promise<void>;
    getLoadForceType(): LoadType[];
    getLocalCacheData(info: GetTokenInfo): Promise<GetTokenResult | undefined>;
    getExternalData(info: GetTokenInfo): Promise<GetTokenResult>;
    updateField(info: GetTokenInfo, data: GetTokenResult): Promise<void>;
    getCacheDataError(info: GetTokenInfo): CacheDataError;
}
