import { Transport } from '../../../internal/interfaces/transport';
import { AddDepositAddressV3Resp } from './model_add_deposit_address_v3_resp';
import { GetDepositAddressV1Resp } from './model_get_deposit_address_v1_resp';
import { GetDepositHistoryOldResp } from './model_get_deposit_history_old_resp';
import { AddDepositAddressV3Req } from './model_add_deposit_address_v3_req';
import { AddDepositAddressV1Req } from './model_add_deposit_address_v1_req';
import { GetDepositHistoryOldReq } from './model_get_deposit_history_old_req';
import { GetDepositAddressV2Req } from './model_get_deposit_address_v2_req';
import { GetDepositHistoryResp } from './model_get_deposit_history_resp';
import { GetDepositHistoryReq } from './model_get_deposit_history_req';
import { GetDepositAddressV3Resp } from './model_get_deposit_address_v3_resp';
import { GetDepositAddressV3Req } from './model_get_deposit_address_v3_req';
import { AddDepositAddressV1Resp } from './model_add_deposit_address_v1_resp';
import { GetDepositAddressV1Req } from './model_get_deposit_address_v1_req';
import { GetDepositAddressV2Resp } from './model_get_deposit_address_v2_resp';
export interface DepositAPI {
    /**
     * addDepositAddressV3 Add Deposit Address (V3)
     * Description: Request via this endpoint the creation of a deposit address for a currency you intend to deposit.
     * Documentation: https://www.kucoin.com/docs-new/api-3470142
     * +-----------------------+------------+
     * | Extra API Info        | Value      |
     * +-----------------------+------------+
     * | API-DOMAIN            | SPOT       |
     * | API-CHANNEL           | PRIVATE    |
     * | API-PERMISSION        | GENERAL    |
     * | API-RATE-LIMIT-POOL   | MANAGEMENT |
     * | API-RATE-LIMIT-WEIGHT | 20         |
     * +-----------------------+------------+
     */
    addDepositAddressV3(req: AddDepositAddressV3Req): Promise<AddDepositAddressV3Resp>;
    /**
     * getDepositAddressV3 Get Deposit Address (V3)
     * Description: Get all deposit addresses for the currency you intend to deposit. If the returned data is empty, you may need to add the deposit address first.
     * Documentation: https://www.kucoin.com/docs-new/api-3470140
     * +-----------------------+------------+
     * | Extra API Info        | Value      |
     * +-----------------------+------------+
     * | API-DOMAIN            | SPOT       |
     * | API-CHANNEL           | PRIVATE    |
     * | API-PERMISSION        | GENERAL    |
     * | API-RATE-LIMIT-POOL   | MANAGEMENT |
     * | API-RATE-LIMIT-WEIGHT | 5          |
     * +-----------------------+------------+
     */
    getDepositAddressV3(req: GetDepositAddressV3Req): Promise<GetDepositAddressV3Resp>;
    /**
     * getDepositHistory Get Deposit History
     * Description: Request a deposit list via this endpoint. Items are paginated and sorted to show the latest first. See the Pagination section for retrieving additional entries after the first page.
     * Documentation: https://www.kucoin.com/docs-new/api-3470141
     * +-----------------------+------------+
     * | Extra API Info        | Value      |
     * +-----------------------+------------+
     * | API-DOMAIN            | SPOT       |
     * | API-CHANNEL           | PRIVATE    |
     * | API-PERMISSION        | GENERAL    |
     * | API-RATE-LIMIT-POOL   | MANAGEMENT |
     * | API-RATE-LIMIT-WEIGHT | 5          |
     * +-----------------------+------------+
     */
    getDepositHistory(req: GetDepositHistoryReq): Promise<GetDepositHistoryResp>;
    /**
     * @deprecated
     * getDepositAddressV2 Get Deposit Addresses (V2)
     * Description: Get all deposit addresses for the currency you intend to deposit. If the returned data is empty, you may need to add the deposit address first.
     * Documentation: https://www.kucoin.com/docs-new/api-3470300
     * +-----------------------+------------+
     * | Extra API Info        | Value      |
     * +-----------------------+------------+
     * | API-DOMAIN            | SPOT       |
     * | API-CHANNEL           | PRIVATE    |
     * | API-PERMISSION        | GENERAL    |
     * | API-RATE-LIMIT-POOL   | MANAGEMENT |
     * | API-RATE-LIMIT-WEIGHT | 5          |
     * +-----------------------+------------+
     */
    getDepositAddressV2(req: GetDepositAddressV2Req): Promise<GetDepositAddressV2Resp>;
    /**
     * @deprecated
     * getDepositAddressV1 Get Deposit Addresses - V1
     * Description: Get all deposit addresses for the currency you intend to deposit. If the returned data is empty, you may need to add the deposit address first.
     * Documentation: https://www.kucoin.com/docs-new/api-3470305
     * +-----------------------+------------+
     * | Extra API Info        | Value      |
     * +-----------------------+------------+
     * | API-DOMAIN            | SPOT       |
     * | API-CHANNEL           | PRIVATE    |
     * | API-PERMISSION        | GENERAL    |
     * | API-RATE-LIMIT-POOL   | MANAGEMENT |
     * | API-RATE-LIMIT-WEIGHT | 5          |
     * +-----------------------+------------+
     */
    getDepositAddressV1(req: GetDepositAddressV1Req): Promise<GetDepositAddressV1Resp>;
    /**
     * @deprecated
     * getDepositHistoryOld Get Deposit History - Old
     * Description: Request the V1 historical deposits list on KuCoin via this endpoint. The return value is the data after Pagination, sorted in descending order according to time.
     * Documentation: https://www.kucoin.com/docs-new/api-3470306
     * +-----------------------+------------+
     * | Extra API Info        | Value      |
     * +-----------------------+------------+
     * | API-DOMAIN            | SPOT       |
     * | API-CHANNEL           | PRIVATE    |
     * | API-PERMISSION        | GENERAL    |
     * | API-RATE-LIMIT-POOL   | MANAGEMENT |
     * | API-RATE-LIMIT-WEIGHT | 5          |
     * +-----------------------+------------+
     */
    getDepositHistoryOld(req: GetDepositHistoryOldReq): Promise<GetDepositHistoryOldResp>;
    /**
     * @deprecated
     * addDepositAddressV1 Add Deposit Address - V1
     * Description: Request via this endpoint the creation of a deposit address for a currency you intend to deposit.
     * Documentation: https://www.kucoin.com/docs-new/api-3470309
     * +-----------------------+------------+
     * | Extra API Info        | Value      |
     * +-----------------------+------------+
     * | API-DOMAIN            | SPOT       |
     * | API-CHANNEL           | PRIVATE    |
     * | API-PERMISSION        | GENERAL    |
     * | API-RATE-LIMIT-POOL   | MANAGEMENT |
     * | API-RATE-LIMIT-WEIGHT | 20         |
     * +-----------------------+------------+
     */
    addDepositAddressV1(req: AddDepositAddressV1Req): Promise<AddDepositAddressV1Resp>;
}
export declare class DepositAPIImpl implements DepositAPI {
    private transport;
    constructor(transport: Transport);
    addDepositAddressV3(req: AddDepositAddressV3Req): Promise<AddDepositAddressV3Resp>;
    getDepositAddressV3(req: GetDepositAddressV3Req): Promise<GetDepositAddressV3Resp>;
    getDepositHistory(req: GetDepositHistoryReq): Promise<GetDepositHistoryResp>;
    getDepositAddressV2(req: GetDepositAddressV2Req): Promise<GetDepositAddressV2Resp>;
    getDepositAddressV1(req: GetDepositAddressV1Req): Promise<GetDepositAddressV1Resp>;
    getDepositHistoryOld(req: GetDepositHistoryOldReq): Promise<GetDepositHistoryOldResp>;
    addDepositAddressV1(req: AddDepositAddressV1Req): Promise<AddDepositAddressV1Resp>;
}
