UNPKG

tinkoff-invest-api

Version:
311 lines 17 kB
import type { CallContext, CallOptions } from "nice-grpc-common"; import _m0 from "protobufjs/minimal.js"; import { MoneyValue, Quotation } from "./common.js"; export declare const protobufPackage = "tinkoff.public.invest.api.contract.v1"; /** Тип счёта. */ export declare enum AccountType { /** ACCOUNT_TYPE_UNSPECIFIED - Тип аккаунта не определён. */ ACCOUNT_TYPE_UNSPECIFIED = 0, /** ACCOUNT_TYPE_TINKOFF - Брокерский счёт Т-Инвестиций. */ ACCOUNT_TYPE_TINKOFF = 1, /** ACCOUNT_TYPE_TINKOFF_IIS - ИИС. */ ACCOUNT_TYPE_TINKOFF_IIS = 2, /** ACCOUNT_TYPE_INVEST_BOX - Инвесткопилка. */ ACCOUNT_TYPE_INVEST_BOX = 3, /** ACCOUNT_TYPE_INVEST_FUND - Фонд денежного рынка. */ ACCOUNT_TYPE_INVEST_FUND = 4, UNRECOGNIZED = -1 } export declare function accountTypeFromJSON(object: any): AccountType; export declare function accountTypeToJSON(object: AccountType): string; /** Статус счёта. */ export declare enum AccountStatus { /** ACCOUNT_STATUS_UNSPECIFIED - Статус счёта не определён. */ ACCOUNT_STATUS_UNSPECIFIED = 0, /** ACCOUNT_STATUS_NEW - Новый, в процессе открытия. */ ACCOUNT_STATUS_NEW = 1, /** ACCOUNT_STATUS_OPEN - Открытый и активный счёт. */ ACCOUNT_STATUS_OPEN = 2, /** ACCOUNT_STATUS_CLOSED - Закрытый счёт. */ ACCOUNT_STATUS_CLOSED = 3, /** ACCOUNT_STATUS_ALL - Все счета. */ ACCOUNT_STATUS_ALL = 4, UNRECOGNIZED = -1 } export declare function accountStatusFromJSON(object: any): AccountStatus; export declare function accountStatusToJSON(object: AccountStatus): string; /** Уровень доступа к счёту. */ export declare enum AccessLevel { /** ACCOUNT_ACCESS_LEVEL_UNSPECIFIED - Уровень доступа не определён. */ ACCOUNT_ACCESS_LEVEL_UNSPECIFIED = 0, /** ACCOUNT_ACCESS_LEVEL_FULL_ACCESS - Полный доступ к счёту. */ ACCOUNT_ACCESS_LEVEL_FULL_ACCESS = 1, /** ACCOUNT_ACCESS_LEVEL_READ_ONLY - Доступ с уровнем прав «только чтение». */ ACCOUNT_ACCESS_LEVEL_READ_ONLY = 2, /** ACCOUNT_ACCESS_LEVEL_NO_ACCESS - Доступа нет. */ ACCOUNT_ACCESS_LEVEL_NO_ACCESS = 3, UNRECOGNIZED = -1 } export declare function accessLevelFromJSON(object: any): AccessLevel; export declare function accessLevelToJSON(object: AccessLevel): string; /** Запрос получения счетов пользователя. */ export interface GetAccountsRequest { /** Статус счета. */ status?: AccountStatus | undefined; } /** Список счетов пользователя. */ export interface GetAccountsResponse { /** Массив счетов клиента. */ accounts: Account[]; } /** Информация о счёте. */ export interface Account { /** Идентификатор счёта. */ id: string; /** Тип счёта. */ type: AccountType; /** Название счёта. */ name: string; /** Статус счёта. */ status: AccountStatus; /** Дата открытия счёта в часовом поясе UTC. */ openedDate?: Date | undefined; /** Дата закрытия счёта в часовом поясе UTC. */ closedDate?: Date | undefined; /** Уровень доступа к текущему счёту (определяется токеном). */ accessLevel: AccessLevel; } /** Запрос маржинальных показателей по счёту. */ export interface GetMarginAttributesRequest { /** Идентификатор счёта пользователя. */ accountId: string; } /** Маржинальные показатели по счёту. */ export interface GetMarginAttributesResponse { /** Ликвидная стоимость портфеля. [Подробнее про ликвидный портфель](https://help.tbank.ru/margin-trade/short/liquid-portfolio/). */ liquidPortfolio?: MoneyValue | undefined; /** Начальная маржа — начальное обеспечение для совершения новой сделки. [Подробнее про начальную и минимальную маржу](https://help.tbank.ru/margin-trade/short/initial-and-maintenance-margin/). */ startingMargin?: MoneyValue | undefined; /** Минимальная маржа — это минимальное обеспечение для поддержания позиции, которую вы уже открыли. [Подробнее про начальную и минимальную маржу](https://help.tbank.ru/margin-trade/short/initial-and-maintenance-margin/). */ minimalMargin?: MoneyValue | undefined; /** Уровень достаточности средств. Соотношение стоимости ликвидного портфеля к начальной марже. */ fundsSufficiencyLevel?: Quotation | undefined; /** Объем недостающих средств. Разница между стартовой маржой и ликвидной стоимости портфеля. */ amountOfMissingFunds?: MoneyValue | undefined; /** Скорректированная маржа. Начальная маржа, в которой плановые позиции рассчитываются с учётом активных заявок на покупку позиций лонг или продажу позиций шорт. */ correctedMargin?: MoneyValue | undefined; } /** Запрос текущих лимитов пользователя. */ export interface GetUserTariffRequest { } /** Текущие лимиты пользователя. */ export interface GetUserTariffResponse { /** Массив лимитов пользователя по unary-запросам. */ unaryLimits: UnaryLimit[]; /** Массив лимитов пользователей для stream-соединений. */ streamLimits: StreamLimit[]; } /** Лимит unary-методов. */ export interface UnaryLimit { /** Количество unary-запросов в минуту. */ limitPerMinute: number; /** Названия методов. */ methods: string[]; } /** Лимит stream-соединений. */ export interface StreamLimit { /** Максимальное количество stream-соединений. */ limit: number; /** Названия stream-методов. */ streams: string[]; /** Текущее количество открытых stream-соединений. */ open: number; } /** Запрос информации о пользователе. */ export interface GetInfoRequest { } /** Информация о пользователе. */ export interface GetInfoResponse { /** Признак премиум клиента. */ premStatus: boolean; /** Признак квалифицированного инвестора. */ qualStatus: boolean; /** Набор требующих тестирования инструментов и возможностей, с которыми может работать пользователь. [Подробнее](https://russianinvestments.github.io/investAPI/faq_users/). */ qualifiedForWorkWith: string[]; /** Наименование тарифа пользователя. */ tariff: string; } export declare const GetAccountsRequest: { encode(message: GetAccountsRequest, writer?: _m0.Writer): _m0.Writer; decode(input: _m0.Reader | Uint8Array, length?: number): GetAccountsRequest; fromJSON(object: any): GetAccountsRequest; toJSON(message: GetAccountsRequest): unknown; }; export declare const GetAccountsResponse: { encode(message: GetAccountsResponse, writer?: _m0.Writer): _m0.Writer; decode(input: _m0.Reader | Uint8Array, length?: number): GetAccountsResponse; fromJSON(object: any): GetAccountsResponse; toJSON(message: GetAccountsResponse): unknown; }; export declare const Account: { encode(message: Account, writer?: _m0.Writer): _m0.Writer; decode(input: _m0.Reader | Uint8Array, length?: number): Account; fromJSON(object: any): Account; toJSON(message: Account): unknown; }; export declare const GetMarginAttributesRequest: { encode(message: GetMarginAttributesRequest, writer?: _m0.Writer): _m0.Writer; decode(input: _m0.Reader | Uint8Array, length?: number): GetMarginAttributesRequest; fromJSON(object: any): GetMarginAttributesRequest; toJSON(message: GetMarginAttributesRequest): unknown; }; export declare const GetMarginAttributesResponse: { encode(message: GetMarginAttributesResponse, writer?: _m0.Writer): _m0.Writer; decode(input: _m0.Reader | Uint8Array, length?: number): GetMarginAttributesResponse; fromJSON(object: any): GetMarginAttributesResponse; toJSON(message: GetMarginAttributesResponse): unknown; }; export declare const GetUserTariffRequest: { encode(_: GetUserTariffRequest, writer?: _m0.Writer): _m0.Writer; decode(input: _m0.Reader | Uint8Array, length?: number): GetUserTariffRequest; fromJSON(_: any): GetUserTariffRequest; toJSON(_: GetUserTariffRequest): unknown; }; export declare const GetUserTariffResponse: { encode(message: GetUserTariffResponse, writer?: _m0.Writer): _m0.Writer; decode(input: _m0.Reader | Uint8Array, length?: number): GetUserTariffResponse; fromJSON(object: any): GetUserTariffResponse; toJSON(message: GetUserTariffResponse): unknown; }; export declare const UnaryLimit: { encode(message: UnaryLimit, writer?: _m0.Writer): _m0.Writer; decode(input: _m0.Reader | Uint8Array, length?: number): UnaryLimit; fromJSON(object: any): UnaryLimit; toJSON(message: UnaryLimit): unknown; }; export declare const StreamLimit: { encode(message: StreamLimit, writer?: _m0.Writer): _m0.Writer; decode(input: _m0.Reader | Uint8Array, length?: number): StreamLimit; fromJSON(object: any): StreamLimit; toJSON(message: StreamLimit): unknown; }; export declare const GetInfoRequest: { encode(_: GetInfoRequest, writer?: _m0.Writer): _m0.Writer; decode(input: _m0.Reader | Uint8Array, length?: number): GetInfoRequest; fromJSON(_: any): GetInfoRequest; toJSON(_: GetInfoRequest): unknown; }; export declare const GetInfoResponse: { encode(message: GetInfoResponse, writer?: _m0.Writer): _m0.Writer; decode(input: _m0.Reader | Uint8Array, length?: number): GetInfoResponse; fromJSON(object: any): GetInfoResponse; toJSON(message: GetInfoResponse): unknown; }; /** * С помощью сервиса можно получить: </br> 1. * список счетов пользователя; </br> 2. маржинальные показатели по счёту. */ export type UsersServiceDefinition = typeof UsersServiceDefinition; export declare const UsersServiceDefinition: { readonly name: "UsersService"; readonly fullName: "tinkoff.public.invest.api.contract.v1.UsersService"; readonly methods: { /** Получить счета пользователя. */ readonly getAccounts: { readonly name: "GetAccounts"; readonly requestType: { encode(message: GetAccountsRequest, writer?: _m0.Writer): _m0.Writer; decode(input: _m0.Reader | Uint8Array, length?: number): GetAccountsRequest; fromJSON(object: any): GetAccountsRequest; toJSON(message: GetAccountsRequest): unknown; }; readonly requestStream: false; readonly responseType: { encode(message: GetAccountsResponse, writer?: _m0.Writer): _m0.Writer; decode(input: _m0.Reader | Uint8Array, length?: number): GetAccountsResponse; fromJSON(object: any): GetAccountsResponse; toJSON(message: GetAccountsResponse): unknown; }; readonly responseStream: false; readonly options: {}; }; /** Рассчитать маржинальные показатели по счёту. */ readonly getMarginAttributes: { readonly name: "GetMarginAttributes"; readonly requestType: { encode(message: GetMarginAttributesRequest, writer?: _m0.Writer): _m0.Writer; decode(input: _m0.Reader | Uint8Array, length?: number): GetMarginAttributesRequest; fromJSON(object: any): GetMarginAttributesRequest; toJSON(message: GetMarginAttributesRequest): unknown; }; readonly requestStream: false; readonly responseType: { encode(message: GetMarginAttributesResponse, writer?: _m0.Writer): _m0.Writer; decode(input: _m0.Reader | Uint8Array, length?: number): GetMarginAttributesResponse; fromJSON(object: any): GetMarginAttributesResponse; toJSON(message: GetMarginAttributesResponse): unknown; }; readonly responseStream: false; readonly options: {}; }; /** Запросить тариф пользователя. */ readonly getUserTariff: { readonly name: "GetUserTariff"; readonly requestType: { encode(_: GetUserTariffRequest, writer?: _m0.Writer): _m0.Writer; decode(input: _m0.Reader | Uint8Array, length?: number): GetUserTariffRequest; fromJSON(_: any): GetUserTariffRequest; toJSON(_: GetUserTariffRequest): unknown; }; readonly requestStream: false; readonly responseType: { encode(message: GetUserTariffResponse, writer?: _m0.Writer): _m0.Writer; decode(input: _m0.Reader | Uint8Array, length?: number): GetUserTariffResponse; fromJSON(object: any): GetUserTariffResponse; toJSON(message: GetUserTariffResponse): unknown; }; readonly responseStream: false; readonly options: {}; }; /** Получить информацию о пользователе. */ readonly getInfo: { readonly name: "GetInfo"; readonly requestType: { encode(_: GetInfoRequest, writer?: _m0.Writer): _m0.Writer; decode(input: _m0.Reader | Uint8Array, length?: number): GetInfoRequest; fromJSON(_: any): GetInfoRequest; toJSON(_: GetInfoRequest): unknown; }; readonly requestStream: false; readonly responseType: { encode(message: GetInfoResponse, writer?: _m0.Writer): _m0.Writer; decode(input: _m0.Reader | Uint8Array, length?: number): GetInfoResponse; fromJSON(object: any): GetInfoResponse; toJSON(message: GetInfoResponse): unknown; }; readonly responseStream: false; readonly options: {}; }; }; }; export interface UsersServiceImplementation<CallContextExt = {}> { /** Получить счета пользователя. */ getAccounts(request: GetAccountsRequest, context: CallContext & CallContextExt): Promise<GetAccountsResponse>; /** Рассчитать маржинальные показатели по счёту. */ getMarginAttributes(request: GetMarginAttributesRequest, context: CallContext & CallContextExt): Promise<GetMarginAttributesResponse>; /** Запросить тариф пользователя. */ getUserTariff(request: GetUserTariffRequest, context: CallContext & CallContextExt): Promise<GetUserTariffResponse>; /** Получить информацию о пользователе. */ getInfo(request: GetInfoRequest, context: CallContext & CallContextExt): Promise<GetInfoResponse>; } export interface UsersServiceClient<CallOptionsExt = {}> { /** Получить счета пользователя. */ getAccounts(request: GetAccountsRequest, options?: CallOptions & CallOptionsExt): Promise<GetAccountsResponse>; /** Рассчитать маржинальные показатели по счёту. */ getMarginAttributes(request: GetMarginAttributesRequest, options?: CallOptions & CallOptionsExt): Promise<GetMarginAttributesResponse>; /** Запросить тариф пользователя. */ getUserTariff(request: GetUserTariffRequest, options?: CallOptions & CallOptionsExt): Promise<GetUserTariffResponse>; /** Получить информацию о пользователе. */ getInfo(request: GetInfoRequest, options?: CallOptions & CallOptionsExt): Promise<GetInfoResponse>; } //# sourceMappingURL=users.d.ts.map