import { Transport } from '../../../internal/interfaces/transport';
import { ModifyLeverageReq } from './model_modify_leverage_req';
import { GetBorrowHistoryReq } from './model_get_borrow_history_req';
import { GetRepayHistoryResp } from './model_get_repay_history_resp';
import { RepayReq } from './model_repay_req';
import { GetInterestHistoryReq } from './model_get_interest_history_req';
import { RepayResp } from './model_repay_resp';
import { BorrowResp } from './model_borrow_resp';
import { BorrowReq } from './model_borrow_req';
import { GetRepayHistoryReq } from './model_get_repay_history_req';
import { ModifyLeverageResp } from './model_modify_leverage_resp';
import { GetInterestHistoryResp } from './model_get_interest_history_resp';
import { GetBorrowHistoryResp } from './model_get_borrow_history_resp';
export interface DebitAPI {
    /**
     * borrow Borrow
     * Description: This API endpoint is used to initiate an application for cross or isolated margin borrowing.
     * Documentation: https://www.kucoin.com/docs-new/api-3470206
     * +-----------------------+---------+
     * | Extra API Info        | Value   |
     * +-----------------------+---------+
     * | API-DOMAIN            | SPOT    |
     * | API-CHANNEL           | PRIVATE |
     * | API-PERMISSION        | MARGIN  |
     * | API-RATE-LIMIT-POOL   | SPOT    |
     * | API-RATE-LIMIT-WEIGHT | 15      |
     * +-----------------------+---------+
     */
    borrow(req: BorrowReq): Promise<BorrowResp>;
    /**
     * getBorrowHistory Get Borrow History
     * Description: This API endpoint is used to get the borrowing orders for cross and isolated margin accounts.
     * Documentation: https://www.kucoin.com/docs-new/api-3470207
     * +-----------------------+---------+
     * | Extra API Info        | Value   |
     * +-----------------------+---------+
     * | API-DOMAIN            | SPOT    |
     * | API-CHANNEL           | PRIVATE |
     * | API-PERMISSION        | MARGIN  |
     * | API-RATE-LIMIT-POOL   | SPOT    |
     * | API-RATE-LIMIT-WEIGHT | 15      |
     * +-----------------------+---------+
     */
    getBorrowHistory(req: GetBorrowHistoryReq): Promise<GetBorrowHistoryResp>;
    /**
     * repay Repay
     * Description: This API endpoint is used to initiate an application for cross or isolated margin repayment.
     * Documentation: https://www.kucoin.com/docs-new/api-3470210
     * +-----------------------+---------+
     * | Extra API Info        | Value   |
     * +-----------------------+---------+
     * | API-DOMAIN            | SPOT    |
     * | API-CHANNEL           | PRIVATE |
     * | API-PERMISSION        | MARGIN  |
     * | API-RATE-LIMIT-POOL   | SPOT    |
     * | API-RATE-LIMIT-WEIGHT | 10      |
     * +-----------------------+---------+
     */
    repay(req: RepayReq): Promise<RepayResp>;
    /**
     * getRepayHistory Get Repay History
     * Description: This API endpoint is used to get the borrowing orders for cross and isolated margin accounts.
     * Documentation: https://www.kucoin.com/docs-new/api-3470208
     * +-----------------------+---------+
     * | Extra API Info        | Value   |
     * +-----------------------+---------+
     * | API-DOMAIN            | SPOT    |
     * | API-CHANNEL           | PRIVATE |
     * | API-PERMISSION        | MARGIN  |
     * | API-RATE-LIMIT-POOL   | SPOT    |
     * | API-RATE-LIMIT-WEIGHT | 15      |
     * +-----------------------+---------+
     */
    getRepayHistory(req: GetRepayHistoryReq): Promise<GetRepayHistoryResp>;
    /**
     * getInterestHistory Get Interest History.
     * Description: Request the interest records of the cross/isolated margin lending via this endpoint.
     * Documentation: https://www.kucoin.com/docs-new/api-3470209
     * +-----------------------+---------+
     * | Extra API Info        | Value   |
     * +-----------------------+---------+
     * | API-DOMAIN            | SPOT    |
     * | API-CHANNEL           | PRIVATE |
     * | API-PERMISSION        | MARGIN  |
     * | API-RATE-LIMIT-POOL   | SPOT    |
     * | API-RATE-LIMIT-WEIGHT | 20      |
     * +-----------------------+---------+
     */
    getInterestHistory(req: GetInterestHistoryReq): Promise<GetInterestHistoryResp>;
    /**
     * modifyLeverage Modify Leverage
     * Description: This endpoint allows modifying the leverage multiplier for cross margin or isolated margin.
     * Documentation: https://www.kucoin.com/docs-new/api-3470211
     * +-----------------------+---------+
     * | Extra API Info        | Value   |
     * +-----------------------+---------+
     * | API-DOMAIN            | SPOT    |
     * | API-CHANNEL           | PRIVATE |
     * | API-PERMISSION        | MARGIN  |
     * | API-RATE-LIMIT-POOL   | SPOT    |
     * | API-RATE-LIMIT-WEIGHT | 8       |
     * +-----------------------+---------+
     */
    modifyLeverage(req: ModifyLeverageReq): Promise<ModifyLeverageResp>;
}
export declare class DebitAPIImpl implements DebitAPI {
    private transport;
    constructor(transport: Transport);
    borrow(req: BorrowReq): Promise<BorrowResp>;
    getBorrowHistory(req: GetBorrowHistoryReq): Promise<GetBorrowHistoryResp>;
    repay(req: RepayReq): Promise<RepayResp>;
    getRepayHistory(req: GetRepayHistoryReq): Promise<GetRepayHistoryResp>;
    getInterestHistory(req: GetInterestHistoryReq): Promise<GetInterestHistoryResp>;
    modifyLeverage(req: ModifyLeverageReq): Promise<ModifyLeverageResp>;
}
