import { Serializable } from '../../../internal/interfaces/serializable';
export declare class GetKlinesReq implements Serializable {
    /**
     *  symbol
     */
    symbol?: string;
    /**
     * Type of candlestick patterns: 1min, 3min, 5min, 15min, 30min, 1hour, 2hour, 4hour, 6hour, 8hour, 12hour, 1day, 1week, 1month
     */
    type?: GetKlinesReq.TypeEnum;
    /**
     * Start time (second), default is 0
     */
    startAt?: number;
    /**
     * End time (second), default is 0
     */
    endAt?: number;
    /**
     * Private constructor, please use the corresponding static methods to construct the object.
     */
    private constructor();
    /**
     * Creates a new instance of the `GetKlinesReq` class.
     * The builder pattern allows step-by-step construction of a `GetKlinesReq` object.
     */
    static builder(): GetKlinesReqBuilder;
    /**
     * Creates a new instance of the `GetKlinesReq` class with the given data.
     */
    static create(data: {
        /**
         *  symbol
         */
        symbol?: string;
        /**
         * Type of candlestick patterns: 1min, 3min, 5min, 15min, 30min, 1hour, 2hour, 4hour, 6hour, 8hour, 12hour, 1day, 1week, 1month
         */
        type?: GetKlinesReq.TypeEnum;
        /**
         * Start time (second), default is 0
         */
        startAt?: number;
        /**
         * End time (second), default is 0
         */
        endAt?: number;
    }): GetKlinesReq;
    /**
     * Convert the object to a JSON string.
     */
    toJson(): string;
    /**
     * Create an object from a JSON string.
     */
    static fromJson(input: string): GetKlinesReq;
    /**
     * Create an object from Js Object.
     */
    static fromObject(jsonObject: Object): GetKlinesReq;
}
export declare namespace GetKlinesReq {
    enum TypeEnum {
        /**
         * 1min
         */
        _1MIN,
        /**
         * 3min
         */
        _3MIN,
        /**
         * 5min
         */
        _5MIN,
        /**
         * 15min
         */
        _15MIN,
        /**
         * 30min
         */
        _30MIN,
        /**
         * 1hour
         */
        _1HOUR,
        /**
         * 2hour
         */
        _2HOUR,
        /**
         * 4hour
         */
        _4HOUR,
        /**
         * 6hour
         */
        _6HOUR,
        /**
         * 8hour
         */
        _8HOUR,
        /**
         * 12hour
         */
        _12HOUR,
        /**
         * 1day
         */
        _1DAY,
        /**
         * 1week
         */
        _1WEEK,
        /**
         * 1month
         */
        _1MONTH
    }
}
export declare class GetKlinesReqBuilder {
    readonly obj: GetKlinesReq;
    constructor(obj: GetKlinesReq);
    /**
     *  symbol
     */
    setSymbol(value: string): GetKlinesReqBuilder;
    /**
     * Type of candlestick patterns: 1min, 3min, 5min, 15min, 30min, 1hour, 2hour, 4hour, 6hour, 8hour, 12hour, 1day, 1week, 1month
     */
    setType(value: GetKlinesReq.TypeEnum): GetKlinesReqBuilder;
    /**
     * Start time (second), default is 0
     */
    setStartAt(value: number): GetKlinesReqBuilder;
    /**
     * End time (second), default is 0
     */
    setEndAt(value: number): GetKlinesReqBuilder;
    /**
     * Get the final object.
     */
    build(): GetKlinesReq;
}
