/**
 * 한국투자증권 EFriendExpert API
 *
 * @file packages/EFriendExpert/efriends/efriend.ts
 * @version 0.0.1
 * @license GNU General Public License v3.0
 * @copyright 2017~2023, EFriendExport Community Team
 * @author gye hyun james kim <pnuskgh@gmail.com>
 */
import { Moment } from 'moment';
import { EFriendLimit } from './efriend.limit.js';
import { EFriendRest } from './efriendRest.js';
import { Secret, Token, EFriendConfig } from './efriend.type.js';
import { STANDARD_RESPONSE } from './efriend.type.js';
export declare const limit: EFriendLimit;
export declare class EFriend {
    private readonly logger;
    private efriendRest;
    private secrets;
    constructor({ logger }: EFriendConfig);
    isOperatingTime(today?: Moment): STANDARD_RESPONSE;
    private initialize;
    get rest(): EFriendRest;
    getSecrets(): Array<Secret>;
    private tokenToSecret;
    private tokenToSecrets;
    setLimit(secrets: Array<Secret>): void;
    setSecrets(secrets: Array<Secret>, isSimpleSet?: boolean): Promise<Array<Secret>>;
    getActiveSecrets(secrets?: Array<Secret>, refresh?: boolean, isWaiting?: boolean): Promise<Array<Secret>>;
    private getActiveTokens;
    fetchToken(secret: Secret, isWaiting?: boolean): Promise<Token>;
    fetchTokenRemove(secret: Secret, token: Token): Promise<boolean>;
    resetApprovalKey(secret: Secret): Promise<Secret>;
    fetchApprovalKey(secret: Secret): Promise<[string, string]>;
}
export default EFriend;
//# sourceMappingURL=efriend.d.ts.map