import type { CallContext, CallOptions } from "nice-grpc-common";
import _m0 from "protobufjs/minimal.js";
import { MoneyValue } from "./common.js";
import { GetOperationsByCursorRequest, GetOperationsByCursorResponse, OperationsRequest, OperationsResponse, PortfolioRequest, PortfolioResponse, PositionsRequest, PositionsResponse, WithdrawLimitsRequest, WithdrawLimitsResponse } from "./operations.js";
import { CancelOrderRequest, CancelOrderResponse, GetMaxLotsRequest, GetMaxLotsResponse, GetOrderPriceRequest, GetOrderPriceResponse, GetOrdersRequest, GetOrdersResponse, GetOrderStateRequest, OrderState, PostOrderAsyncRequest, PostOrderAsyncResponse, PostOrderRequest, PostOrderResponse, ReplaceOrderRequest } from "./orders.js";
import { CancelStopOrderRequest, CancelStopOrderResponse, GetStopOrdersRequest, GetStopOrdersResponse, PostStopOrderRequest, PostStopOrderResponse } from "./stoporders.js";
import { GetAccountsRequest, GetAccountsResponse } from "./users.js";
export declare const protobufPackage = "tinkoff.public.invest.api.contract.v1";
/** Запрос открытия счета в песочнице. */
export interface OpenSandboxAccountRequest {
    /** Название счета */
    name?: string | undefined;
}
/** Номер открытого счета в песочнице. */
export interface OpenSandboxAccountResponse {
    /** Номер счета */
    accountId: string;
}
/** Запрос закрытия счета в песочнице. */
export interface CloseSandboxAccountRequest {
    /** Номер счета */
    accountId: string;
}
/** Результат закрытия счета в песочнице. */
export interface CloseSandboxAccountResponse {
}
/** Запрос пополнения счета в песочнице. */
export interface SandboxPayInRequest {
    /** Номер счета */
    accountId: string;
    /** Сумма пополнения счета в рублях */
    amount?: MoneyValue | undefined;
}
/** Результат пополнения счета, текущий баланс. */
export interface SandboxPayInResponse {
    /** Текущий баланс счета */
    balance?: MoneyValue | undefined;
}
export declare const OpenSandboxAccountRequest: {
    encode(message: OpenSandboxAccountRequest, writer?: _m0.Writer): _m0.Writer;
    decode(input: _m0.Reader | Uint8Array, length?: number): OpenSandboxAccountRequest;
    fromJSON(object: any): OpenSandboxAccountRequest;
    toJSON(message: OpenSandboxAccountRequest): unknown;
};
export declare const OpenSandboxAccountResponse: {
    encode(message: OpenSandboxAccountResponse, writer?: _m0.Writer): _m0.Writer;
    decode(input: _m0.Reader | Uint8Array, length?: number): OpenSandboxAccountResponse;
    fromJSON(object: any): OpenSandboxAccountResponse;
    toJSON(message: OpenSandboxAccountResponse): unknown;
};
export declare const CloseSandboxAccountRequest: {
    encode(message: CloseSandboxAccountRequest, writer?: _m0.Writer): _m0.Writer;
    decode(input: _m0.Reader | Uint8Array, length?: number): CloseSandboxAccountRequest;
    fromJSON(object: any): CloseSandboxAccountRequest;
    toJSON(message: CloseSandboxAccountRequest): unknown;
};
export declare const CloseSandboxAccountResponse: {
    encode(_: CloseSandboxAccountResponse, writer?: _m0.Writer): _m0.Writer;
    decode(input: _m0.Reader | Uint8Array, length?: number): CloseSandboxAccountResponse;
    fromJSON(_: any): CloseSandboxAccountResponse;
    toJSON(_: CloseSandboxAccountResponse): unknown;
};
export declare const SandboxPayInRequest: {
    encode(message: SandboxPayInRequest, writer?: _m0.Writer): _m0.Writer;
    decode(input: _m0.Reader | Uint8Array, length?: number): SandboxPayInRequest;
    fromJSON(object: any): SandboxPayInRequest;
    toJSON(message: SandboxPayInRequest): unknown;
};
export declare const SandboxPayInResponse: {
    encode(message: SandboxPayInResponse, writer?: _m0.Writer): _m0.Writer;
    decode(input: _m0.Reader | Uint8Array, length?: number): SandboxPayInResponse;
    fromJSON(object: any): SandboxPayInResponse;
    toJSON(message: SandboxPayInResponse): unknown;
};
/** Методы для работы с песочницей T-Invest API */
export type SandboxServiceDefinition = typeof SandboxServiceDefinition;
export declare const SandboxServiceDefinition: {
    readonly name: "SandboxService";
    readonly fullName: "tinkoff.public.invest.api.contract.v1.SandboxService";
    readonly methods: {
        /** OpenSandboxAccount — зарегистрировать счет */
        readonly openSandboxAccount: {
            readonly name: "OpenSandboxAccount";
            readonly requestType: {
                encode(message: OpenSandboxAccountRequest, writer?: _m0.Writer): _m0.Writer;
                decode(input: _m0.Reader | Uint8Array, length?: number): OpenSandboxAccountRequest;
                fromJSON(object: any): OpenSandboxAccountRequest;
                toJSON(message: OpenSandboxAccountRequest): unknown;
            };
            readonly requestStream: false;
            readonly responseType: {
                encode(message: OpenSandboxAccountResponse, writer?: _m0.Writer): _m0.Writer;
                decode(input: _m0.Reader | Uint8Array, length?: number): OpenSandboxAccountResponse;
                fromJSON(object: any): OpenSandboxAccountResponse;
                toJSON(message: OpenSandboxAccountResponse): unknown;
            };
            readonly responseStream: false;
            readonly options: {};
        };
        /** GetSandboxAccounts — счета пользователя */
        readonly getSandboxAccounts: {
            readonly name: "GetSandboxAccounts";
            readonly requestType: {
                encode(message: GetAccountsRequest, writer?: _m0.Writer): _m0.Writer;
                decode(input: Uint8Array | _m0.Reader, length?: number | undefined): GetAccountsRequest;
                fromJSON(object: any): GetAccountsRequest;
                toJSON(message: GetAccountsRequest): unknown;
            };
            readonly requestStream: false;
            readonly responseType: {
                encode(message: GetAccountsResponse, writer?: _m0.Writer): _m0.Writer;
                decode(input: Uint8Array | _m0.Reader, length?: number | undefined): GetAccountsResponse;
                fromJSON(object: any): GetAccountsResponse;
                toJSON(message: GetAccountsResponse): unknown;
            };
            readonly responseStream: false;
            readonly options: {};
        };
        /** CloseSandboxAccount — закрыть счет */
        readonly closeSandboxAccount: {
            readonly name: "CloseSandboxAccount";
            readonly requestType: {
                encode(message: CloseSandboxAccountRequest, writer?: _m0.Writer): _m0.Writer;
                decode(input: _m0.Reader | Uint8Array, length?: number): CloseSandboxAccountRequest;
                fromJSON(object: any): CloseSandboxAccountRequest;
                toJSON(message: CloseSandboxAccountRequest): unknown;
            };
            readonly requestStream: false;
            readonly responseType: {
                encode(_: CloseSandboxAccountResponse, writer?: _m0.Writer): _m0.Writer;
                decode(input: _m0.Reader | Uint8Array, length?: number): CloseSandboxAccountResponse;
                fromJSON(_: any): CloseSandboxAccountResponse;
                toJSON(_: CloseSandboxAccountResponse): unknown;
            };
            readonly responseStream: false;
            readonly options: {};
        };
        /** PostSandboxOrder — выставить заявку */
        readonly postSandboxOrder: {
            readonly name: "PostSandboxOrder";
            readonly requestType: {
                encode(message: PostOrderRequest, writer?: _m0.Writer): _m0.Writer;
                decode(input: Uint8Array | _m0.Reader, length?: number | undefined): PostOrderRequest;
                fromJSON(object: any): PostOrderRequest;
                toJSON(message: PostOrderRequest): unknown;
            };
            readonly requestStream: false;
            readonly responseType: {
                encode(message: PostOrderResponse, writer?: _m0.Writer): _m0.Writer;
                decode(input: Uint8Array | _m0.Reader, length?: number | undefined): PostOrderResponse;
                fromJSON(object: any): PostOrderResponse;
                toJSON(message: PostOrderResponse): unknown;
            };
            readonly responseStream: false;
            readonly options: {};
        };
        /**
         * PostSandboxOrderAsync — выставить заявку асинхронным методом
         * Особенности работы приведены в [статье](/invest/services/orders/async).
         */
        readonly postSandboxOrderAsync: {
            readonly name: "PostSandboxOrderAsync";
            readonly requestType: {
                encode(message: PostOrderAsyncRequest, writer?: _m0.Writer): _m0.Writer;
                decode(input: Uint8Array | _m0.Reader, length?: number | undefined): PostOrderAsyncRequest;
                fromJSON(object: any): PostOrderAsyncRequest;
                toJSON(message: PostOrderAsyncRequest): unknown;
            };
            readonly requestStream: false;
            readonly responseType: {
                encode(message: PostOrderAsyncResponse, writer?: _m0.Writer): _m0.Writer;
                decode(input: Uint8Array | _m0.Reader, length?: number | undefined): PostOrderAsyncResponse;
                fromJSON(object: any): PostOrderAsyncResponse;
                toJSON(message: PostOrderAsyncResponse): unknown;
            };
            readonly responseStream: false;
            readonly options: {};
        };
        /** ReplaceSandboxOrder — изменить выставленную заявку */
        readonly replaceSandboxOrder: {
            readonly name: "ReplaceSandboxOrder";
            readonly requestType: {
                encode(message: ReplaceOrderRequest, writer?: _m0.Writer): _m0.Writer;
                decode(input: Uint8Array | _m0.Reader, length?: number | undefined): ReplaceOrderRequest;
                fromJSON(object: any): ReplaceOrderRequest;
                toJSON(message: ReplaceOrderRequest): unknown;
            };
            readonly requestStream: false;
            readonly responseType: {
                encode(message: PostOrderResponse, writer?: _m0.Writer): _m0.Writer;
                decode(input: Uint8Array | _m0.Reader, length?: number | undefined): PostOrderResponse;
                fromJSON(object: any): PostOrderResponse;
                toJSON(message: PostOrderResponse): unknown;
            };
            readonly responseStream: false;
            readonly options: {};
        };
        /** GetSandboxOrders — получить список активных заявок по счету */
        readonly getSandboxOrders: {
            readonly name: "GetSandboxOrders";
            readonly requestType: {
                encode(message: GetOrdersRequest, writer?: _m0.Writer): _m0.Writer;
                decode(input: Uint8Array | _m0.Reader, length?: number | undefined): GetOrdersRequest;
                fromJSON(object: any): GetOrdersRequest;
                toJSON(message: GetOrdersRequest): unknown;
            };
            readonly requestStream: false;
            readonly responseType: {
                encode(message: GetOrdersResponse, writer?: _m0.Writer): _m0.Writer;
                decode(input: Uint8Array | _m0.Reader, length?: number | undefined): GetOrdersResponse;
                fromJSON(object: any): GetOrdersResponse;
                toJSON(message: GetOrdersResponse): unknown;
            };
            readonly responseStream: false;
            readonly options: {};
        };
        /** CancelSandboxOrder — отменить заявку */
        readonly cancelSandboxOrder: {
            readonly name: "CancelSandboxOrder";
            readonly requestType: {
                encode(message: CancelOrderRequest, writer?: _m0.Writer): _m0.Writer;
                decode(input: Uint8Array | _m0.Reader, length?: number | undefined): CancelOrderRequest;
                fromJSON(object: any): CancelOrderRequest;
                toJSON(message: CancelOrderRequest): unknown;
            };
            readonly requestStream: false;
            readonly responseType: {
                encode(message: CancelOrderResponse, writer?: _m0.Writer): _m0.Writer;
                decode(input: Uint8Array | _m0.Reader, length?: number | undefined): CancelOrderResponse;
                fromJSON(object: any): CancelOrderResponse;
                toJSON(message: CancelOrderResponse): unknown;
            };
            readonly responseStream: false;
            readonly options: {};
        };
        /** GetSandboxOrderState — получить статус торгового поручения */
        readonly getSandboxOrderState: {
            readonly name: "GetSandboxOrderState";
            readonly requestType: {
                encode(message: GetOrderStateRequest, writer?: _m0.Writer): _m0.Writer;
                decode(input: Uint8Array | _m0.Reader, length?: number | undefined): GetOrderStateRequest;
                fromJSON(object: any): GetOrderStateRequest;
                toJSON(message: GetOrderStateRequest): unknown;
            };
            readonly requestStream: false;
            readonly responseType: {
                encode(message: OrderState, writer?: _m0.Writer): _m0.Writer;
                decode(input: Uint8Array | _m0.Reader, length?: number | undefined): OrderState;
                fromJSON(object: any): OrderState;
                toJSON(message: OrderState): unknown;
            };
            readonly responseStream: false;
            readonly options: {};
        };
        /** GetSandboxOrderPrice — получить предварительную стоимость для лимитной заявки */
        readonly getSandboxOrderPrice: {
            readonly name: "GetSandboxOrderPrice";
            readonly requestType: {
                encode(message: GetOrderPriceRequest, writer?: _m0.Writer): _m0.Writer;
                decode(input: Uint8Array | _m0.Reader, length?: number | undefined): GetOrderPriceRequest;
                fromJSON(object: any): GetOrderPriceRequest;
                toJSON(message: GetOrderPriceRequest): unknown;
            };
            readonly requestStream: false;
            readonly responseType: {
                encode(message: GetOrderPriceResponse, writer?: _m0.Writer): _m0.Writer;
                decode(input: Uint8Array | _m0.Reader, length?: number | undefined): GetOrderPriceResponse;
                fromJSON(object: any): GetOrderPriceResponse;
                toJSON(message: GetOrderPriceResponse): unknown;
            };
            readonly responseStream: false;
            readonly options: {};
        };
        /** GetSandboxPositions — список позиций по счету */
        readonly getSandboxPositions: {
            readonly name: "GetSandboxPositions";
            readonly requestType: {
                encode(message: PositionsRequest, writer?: _m0.Writer): _m0.Writer;
                decode(input: Uint8Array | _m0.Reader, length?: number | undefined): PositionsRequest;
                fromJSON(object: any): PositionsRequest;
                toJSON(message: PositionsRequest): unknown;
            };
            readonly requestStream: false;
            readonly responseType: {
                encode(message: PositionsResponse, writer?: _m0.Writer): _m0.Writer;
                decode(input: Uint8Array | _m0.Reader, length?: number | undefined): PositionsResponse;
                fromJSON(object: any): PositionsResponse;
                toJSON(message: PositionsResponse): unknown;
            };
            readonly responseStream: false;
            readonly options: {};
        };
        /**
         * GetSandboxOperations — список операций по счету
         * При работе с методом учитывайте [особенности взаимодействия](/invest/services/operations/operations_problems).
         */
        readonly getSandboxOperations: {
            readonly name: "GetSandboxOperations";
            readonly requestType: {
                encode(message: OperationsRequest, writer?: _m0.Writer): _m0.Writer;
                decode(input: Uint8Array | _m0.Reader, length?: number | undefined): OperationsRequest;
                fromJSON(object: any): OperationsRequest;
                toJSON(message: OperationsRequest): unknown;
            };
            readonly requestStream: false;
            readonly responseType: {
                encode(message: OperationsResponse, writer?: _m0.Writer): _m0.Writer;
                decode(input: Uint8Array | _m0.Reader, length?: number | undefined): OperationsResponse;
                fromJSON(object: any): OperationsResponse;
                toJSON(message: OperationsResponse): unknown;
            };
            readonly responseStream: false;
            readonly options: {};
        };
        /**
         * GetSandboxOperationsByCursor — список операций по счету с пагинацией
         * При работе с методом учитывайте [особенности взаимодействия](/invest/services/operations/operations_problems).
         */
        readonly getSandboxOperationsByCursor: {
            readonly name: "GetSandboxOperationsByCursor";
            readonly requestType: {
                encode(message: GetOperationsByCursorRequest, writer?: _m0.Writer): _m0.Writer;
                decode(input: Uint8Array | _m0.Reader, length?: number | undefined): GetOperationsByCursorRequest;
                fromJSON(object: any): GetOperationsByCursorRequest;
                toJSON(message: GetOperationsByCursorRequest): unknown;
            };
            readonly requestStream: false;
            readonly responseType: {
                encode(message: GetOperationsByCursorResponse, writer?: _m0.Writer): _m0.Writer;
                decode(input: Uint8Array | _m0.Reader, length?: number | undefined): GetOperationsByCursorResponse;
                fromJSON(object: any): GetOperationsByCursorResponse;
                toJSON(message: GetOperationsByCursorResponse): unknown;
            };
            readonly responseStream: false;
            readonly options: {};
        };
        /** GetSandboxPortfolio — портфель по счету */
        readonly getSandboxPortfolio: {
            readonly name: "GetSandboxPortfolio";
            readonly requestType: {
                encode(message: PortfolioRequest, writer?: _m0.Writer): _m0.Writer;
                decode(input: Uint8Array | _m0.Reader, length?: number | undefined): PortfolioRequest;
                fromJSON(object: any): PortfolioRequest;
                toJSON(message: PortfolioRequest): unknown;
            };
            readonly requestStream: false;
            readonly responseType: {
                encode(message: PortfolioResponse, writer?: _m0.Writer): _m0.Writer;
                decode(input: Uint8Array | _m0.Reader, length?: number | undefined): PortfolioResponse;
                fromJSON(object: any): PortfolioResponse;
                toJSON(message: PortfolioResponse): unknown;
            };
            readonly responseStream: false;
            readonly options: {};
        };
        /** SandboxPayIn — пополнить счет. */
        readonly sandboxPayIn: {
            readonly name: "SandboxPayIn";
            readonly requestType: {
                encode(message: SandboxPayInRequest, writer?: _m0.Writer): _m0.Writer;
                decode(input: _m0.Reader | Uint8Array, length?: number): SandboxPayInRequest;
                fromJSON(object: any): SandboxPayInRequest;
                toJSON(message: SandboxPayInRequest): unknown;
            };
            readonly requestStream: false;
            readonly responseType: {
                encode(message: SandboxPayInResponse, writer?: _m0.Writer): _m0.Writer;
                decode(input: _m0.Reader | Uint8Array, length?: number): SandboxPayInResponse;
                fromJSON(object: any): SandboxPayInResponse;
                toJSON(message: SandboxPayInResponse): unknown;
            };
            readonly responseStream: false;
            readonly options: {};
        };
        /** GetSandboxWithdrawLimits — доступный остаток для вывода средств */
        readonly getSandboxWithdrawLimits: {
            readonly name: "GetSandboxWithdrawLimits";
            readonly requestType: {
                encode(message: WithdrawLimitsRequest, writer?: _m0.Writer): _m0.Writer;
                decode(input: Uint8Array | _m0.Reader, length?: number | undefined): WithdrawLimitsRequest;
                fromJSON(object: any): WithdrawLimitsRequest;
                toJSON(message: WithdrawLimitsRequest): unknown;
            };
            readonly requestStream: false;
            readonly responseType: {
                encode(message: WithdrawLimitsResponse, writer?: _m0.Writer): _m0.Writer;
                decode(input: Uint8Array | _m0.Reader, length?: number | undefined): WithdrawLimitsResponse;
                fromJSON(object: any): WithdrawLimitsResponse;
                toJSON(message: WithdrawLimitsResponse): unknown;
            };
            readonly responseStream: false;
            readonly options: {};
        };
        /** GetSandboxMaxLots — расчет количества доступных для покупки/продажи лотов */
        readonly getSandboxMaxLots: {
            readonly name: "GetSandboxMaxLots";
            readonly requestType: {
                encode(message: GetMaxLotsRequest, writer?: _m0.Writer): _m0.Writer;
                decode(input: Uint8Array | _m0.Reader, length?: number | undefined): GetMaxLotsRequest;
                fromJSON(object: any): GetMaxLotsRequest;
                toJSON(message: GetMaxLotsRequest): unknown;
            };
            readonly requestStream: false;
            readonly responseType: {
                encode(message: GetMaxLotsResponse, writer?: _m0.Writer): _m0.Writer;
                decode(input: Uint8Array | _m0.Reader, length?: number | undefined): GetMaxLotsResponse;
                fromJSON(object: any): GetMaxLotsResponse;
                toJSON(message: GetMaxLotsResponse): unknown;
            };
            readonly responseStream: false;
            readonly options: {};
        };
        /** PostSandboxStopOrder — выставить стоп-заявку */
        readonly postSandboxStopOrder: {
            readonly name: "PostSandboxStopOrder";
            readonly requestType: {
                encode(message: PostStopOrderRequest, writer?: _m0.Writer): _m0.Writer;
                decode(input: Uint8Array | _m0.Reader, length?: number | undefined): PostStopOrderRequest;
                fromJSON(object: any): PostStopOrderRequest;
                toJSON(message: PostStopOrderRequest): unknown;
            };
            readonly requestStream: false;
            readonly responseType: {
                encode(message: PostStopOrderResponse, writer?: _m0.Writer): _m0.Writer;
                decode(input: Uint8Array | _m0.Reader, length?: number | undefined): PostStopOrderResponse;
                fromJSON(object: any): PostStopOrderResponse;
                toJSON(message: PostStopOrderResponse): unknown;
            };
            readonly responseStream: false;
            readonly options: {};
        };
        /** GetSandboxStopOrders — получить список активных стоп-заявок по счету */
        readonly getSandboxStopOrders: {
            readonly name: "GetSandboxStopOrders";
            readonly requestType: {
                encode(message: GetStopOrdersRequest, writer?: _m0.Writer): _m0.Writer;
                decode(input: Uint8Array | _m0.Reader, length?: number | undefined): GetStopOrdersRequest;
                fromJSON(object: any): GetStopOrdersRequest;
                toJSON(message: GetStopOrdersRequest): unknown;
            };
            readonly requestStream: false;
            readonly responseType: {
                encode(message: GetStopOrdersResponse, writer?: _m0.Writer): _m0.Writer;
                decode(input: Uint8Array | _m0.Reader, length?: number | undefined): GetStopOrdersResponse;
                fromJSON(object: any): GetStopOrdersResponse;
                toJSON(message: GetStopOrdersResponse): unknown;
            };
            readonly responseStream: false;
            readonly options: {};
        };
        /** CancelSandboxStopOrder — отменить стоп-заявку */
        readonly cancelSandboxStopOrder: {
            readonly name: "CancelSandboxStopOrder";
            readonly requestType: {
                encode(message: CancelStopOrderRequest, writer?: _m0.Writer): _m0.Writer;
                decode(input: Uint8Array | _m0.Reader, length?: number | undefined): CancelStopOrderRequest;
                fromJSON(object: any): CancelStopOrderRequest;
                toJSON(message: CancelStopOrderRequest): unknown;
            };
            readonly requestStream: false;
            readonly responseType: {
                encode(message: CancelStopOrderResponse, writer?: _m0.Writer): _m0.Writer;
                decode(input: Uint8Array | _m0.Reader, length?: number | undefined): CancelStopOrderResponse;
                fromJSON(object: any): CancelStopOrderResponse;
                toJSON(message: CancelStopOrderResponse): unknown;
            };
            readonly responseStream: false;
            readonly options: {};
        };
    };
};
export interface SandboxServiceImplementation<CallContextExt = {}> {
    /** OpenSandboxAccount — зарегистрировать счет */
    openSandboxAccount(request: OpenSandboxAccountRequest, context: CallContext & CallContextExt): Promise<OpenSandboxAccountResponse>;
    /** GetSandboxAccounts — счета пользователя */
    getSandboxAccounts(request: GetAccountsRequest, context: CallContext & CallContextExt): Promise<GetAccountsResponse>;
    /** CloseSandboxAccount — закрыть счет */
    closeSandboxAccount(request: CloseSandboxAccountRequest, context: CallContext & CallContextExt): Promise<CloseSandboxAccountResponse>;
    /** PostSandboxOrder — выставить заявку */
    postSandboxOrder(request: PostOrderRequest, context: CallContext & CallContextExt): Promise<PostOrderResponse>;
    /**
     * PostSandboxOrderAsync — выставить заявку асинхронным методом
     * Особенности работы приведены в [статье](/invest/services/orders/async).
     */
    postSandboxOrderAsync(request: PostOrderAsyncRequest, context: CallContext & CallContextExt): Promise<PostOrderAsyncResponse>;
    /** ReplaceSandboxOrder — изменить выставленную заявку */
    replaceSandboxOrder(request: ReplaceOrderRequest, context: CallContext & CallContextExt): Promise<PostOrderResponse>;
    /** GetSandboxOrders — получить список активных заявок по счету */
    getSandboxOrders(request: GetOrdersRequest, context: CallContext & CallContextExt): Promise<GetOrdersResponse>;
    /** CancelSandboxOrder — отменить заявку */
    cancelSandboxOrder(request: CancelOrderRequest, context: CallContext & CallContextExt): Promise<CancelOrderResponse>;
    /** GetSandboxOrderState — получить статус торгового поручения */
    getSandboxOrderState(request: GetOrderStateRequest, context: CallContext & CallContextExt): Promise<OrderState>;
    /** GetSandboxOrderPrice — получить предварительную стоимость для лимитной заявки */
    getSandboxOrderPrice(request: GetOrderPriceRequest, context: CallContext & CallContextExt): Promise<GetOrderPriceResponse>;
    /** GetSandboxPositions — список позиций по счету */
    getSandboxPositions(request: PositionsRequest, context: CallContext & CallContextExt): Promise<PositionsResponse>;
    /**
     * GetSandboxOperations — список операций по счету
     * При работе с методом учитывайте [особенности взаимодействия](/invest/services/operations/operations_problems).
     */
    getSandboxOperations(request: OperationsRequest, context: CallContext & CallContextExt): Promise<OperationsResponse>;
    /**
     * GetSandboxOperationsByCursor — список операций по счету с пагинацией
     * При работе с методом учитывайте [особенности взаимодействия](/invest/services/operations/operations_problems).
     */
    getSandboxOperationsByCursor(request: GetOperationsByCursorRequest, context: CallContext & CallContextExt): Promise<GetOperationsByCursorResponse>;
    /** GetSandboxPortfolio — портфель по счету */
    getSandboxPortfolio(request: PortfolioRequest, context: CallContext & CallContextExt): Promise<PortfolioResponse>;
    /** SandboxPayIn — пополнить счет. */
    sandboxPayIn(request: SandboxPayInRequest, context: CallContext & CallContextExt): Promise<SandboxPayInResponse>;
    /** GetSandboxWithdrawLimits — доступный остаток для вывода средств */
    getSandboxWithdrawLimits(request: WithdrawLimitsRequest, context: CallContext & CallContextExt): Promise<WithdrawLimitsResponse>;
    /** GetSandboxMaxLots — расчет количества доступных для покупки/продажи лотов */
    getSandboxMaxLots(request: GetMaxLotsRequest, context: CallContext & CallContextExt): Promise<GetMaxLotsResponse>;
    /** PostSandboxStopOrder — выставить стоп-заявку */
    postSandboxStopOrder(request: PostStopOrderRequest, context: CallContext & CallContextExt): Promise<PostStopOrderResponse>;
    /** GetSandboxStopOrders — получить список активных стоп-заявок по счету */
    getSandboxStopOrders(request: GetStopOrdersRequest, context: CallContext & CallContextExt): Promise<GetStopOrdersResponse>;
    /** CancelSandboxStopOrder — отменить стоп-заявку */
    cancelSandboxStopOrder(request: CancelStopOrderRequest, context: CallContext & CallContextExt): Promise<CancelStopOrderResponse>;
}
export interface SandboxServiceClient<CallOptionsExt = {}> {
    /** OpenSandboxAccount — зарегистрировать счет */
    openSandboxAccount(request: OpenSandboxAccountRequest, options?: CallOptions & CallOptionsExt): Promise<OpenSandboxAccountResponse>;
    /** GetSandboxAccounts — счета пользователя */
    getSandboxAccounts(request: GetAccountsRequest, options?: CallOptions & CallOptionsExt): Promise<GetAccountsResponse>;
    /** CloseSandboxAccount — закрыть счет */
    closeSandboxAccount(request: CloseSandboxAccountRequest, options?: CallOptions & CallOptionsExt): Promise<CloseSandboxAccountResponse>;
    /** PostSandboxOrder — выставить заявку */
    postSandboxOrder(request: PostOrderRequest, options?: CallOptions & CallOptionsExt): Promise<PostOrderResponse>;
    /**
     * PostSandboxOrderAsync — выставить заявку асинхронным методом
     * Особенности работы приведены в [статье](/invest/services/orders/async).
     */
    postSandboxOrderAsync(request: PostOrderAsyncRequest, options?: CallOptions & CallOptionsExt): Promise<PostOrderAsyncResponse>;
    /** ReplaceSandboxOrder — изменить выставленную заявку */
    replaceSandboxOrder(request: ReplaceOrderRequest, options?: CallOptions & CallOptionsExt): Promise<PostOrderResponse>;
    /** GetSandboxOrders — получить список активных заявок по счету */
    getSandboxOrders(request: GetOrdersRequest, options?: CallOptions & CallOptionsExt): Promise<GetOrdersResponse>;
    /** CancelSandboxOrder — отменить заявку */
    cancelSandboxOrder(request: CancelOrderRequest, options?: CallOptions & CallOptionsExt): Promise<CancelOrderResponse>;
    /** GetSandboxOrderState — получить статус торгового поручения */
    getSandboxOrderState(request: GetOrderStateRequest, options?: CallOptions & CallOptionsExt): Promise<OrderState>;
    /** GetSandboxOrderPrice — получить предварительную стоимость для лимитной заявки */
    getSandboxOrderPrice(request: GetOrderPriceRequest, options?: CallOptions & CallOptionsExt): Promise<GetOrderPriceResponse>;
    /** GetSandboxPositions — список позиций по счету */
    getSandboxPositions(request: PositionsRequest, options?: CallOptions & CallOptionsExt): Promise<PositionsResponse>;
    /**
     * GetSandboxOperations — список операций по счету
     * При работе с методом учитывайте [особенности взаимодействия](/invest/services/operations/operations_problems).
     */
    getSandboxOperations(request: OperationsRequest, options?: CallOptions & CallOptionsExt): Promise<OperationsResponse>;
    /**
     * GetSandboxOperationsByCursor — список операций по счету с пагинацией
     * При работе с методом учитывайте [особенности взаимодействия](/invest/services/operations/operations_problems).
     */
    getSandboxOperationsByCursor(request: GetOperationsByCursorRequest, options?: CallOptions & CallOptionsExt): Promise<GetOperationsByCursorResponse>;
    /** GetSandboxPortfolio — портфель по счету */
    getSandboxPortfolio(request: PortfolioRequest, options?: CallOptions & CallOptionsExt): Promise<PortfolioResponse>;
    /** SandboxPayIn — пополнить счет. */
    sandboxPayIn(request: SandboxPayInRequest, options?: CallOptions & CallOptionsExt): Promise<SandboxPayInResponse>;
    /** GetSandboxWithdrawLimits — доступный остаток для вывода средств */
    getSandboxWithdrawLimits(request: WithdrawLimitsRequest, options?: CallOptions & CallOptionsExt): Promise<WithdrawLimitsResponse>;
    /** GetSandboxMaxLots — расчет количества доступных для покупки/продажи лотов */
    getSandboxMaxLots(request: GetMaxLotsRequest, options?: CallOptions & CallOptionsExt): Promise<GetMaxLotsResponse>;
    /** PostSandboxStopOrder — выставить стоп-заявку */
    postSandboxStopOrder(request: PostStopOrderRequest, options?: CallOptions & CallOptionsExt): Promise<PostStopOrderResponse>;
    /** GetSandboxStopOrders — получить список активных стоп-заявок по счету */
    getSandboxStopOrders(request: GetStopOrdersRequest, options?: CallOptions & CallOptionsExt): Promise<GetStopOrdersResponse>;
    /** CancelSandboxStopOrder — отменить стоп-заявку */
    cancelSandboxStopOrder(request: CancelStopOrderRequest, options?: CallOptions & CallOptionsExt): Promise<CancelStopOrderResponse>;
}
//# sourceMappingURL=sandbox.d.ts.map