tinkoff-invest-api
Version:
Node.js SDK for Tinkoff Invest API
944 lines • 36.6 kB
JavaScript
"use strict";
var __importDefault = (this && this.__importDefault) || function (mod) {
return (mod && mod.__esModule) ? mod : { "default": mod };
};
Object.defineProperty(exports, "__esModule", { value: true });
exports.UsersServiceDefinition = exports.GetInfoResponse = exports.GetInfoRequest = exports.StreamLimit = exports.UnaryLimit = exports.GetUserTariffResponse = exports.GetUserTariffRequest = exports.GetMarginAttributesResponse = exports.GetMarginAttributesRequest = exports.Account = exports.GetAccountsResponse = exports.GetAccountsRequest = exports.accessLevelToJSON = exports.accessLevelFromJSON = exports.AccessLevel = exports.accountStatusToJSON = exports.accountStatusFromJSON = exports.AccountStatus = exports.accountTypeToJSON = exports.accountTypeFromJSON = exports.AccountType = exports.protobufPackage = void 0;
const minimal_js_1 = __importDefault(require("protobufjs/minimal.js"));
const common_js_1 = require("./common.js");
const timestamp_js_1 = require("./google/protobuf/timestamp.js");
exports.protobufPackage = "tinkoff.public.invest.api.contract.v1";
/** Тип счёта. */
var AccountType;
(function (AccountType) {
/** ACCOUNT_TYPE_UNSPECIFIED - Тип аккаунта не определён. */
AccountType[AccountType["ACCOUNT_TYPE_UNSPECIFIED"] = 0] = "ACCOUNT_TYPE_UNSPECIFIED";
/** ACCOUNT_TYPE_TINKOFF - Брокерский счёт Т-Инвестиций. */
AccountType[AccountType["ACCOUNT_TYPE_TINKOFF"] = 1] = "ACCOUNT_TYPE_TINKOFF";
/** ACCOUNT_TYPE_TINKOFF_IIS - ИИС. */
AccountType[AccountType["ACCOUNT_TYPE_TINKOFF_IIS"] = 2] = "ACCOUNT_TYPE_TINKOFF_IIS";
/** ACCOUNT_TYPE_INVEST_BOX - Инвесткопилка. */
AccountType[AccountType["ACCOUNT_TYPE_INVEST_BOX"] = 3] = "ACCOUNT_TYPE_INVEST_BOX";
/** ACCOUNT_TYPE_INVEST_FUND - Фонд денежного рынка. */
AccountType[AccountType["ACCOUNT_TYPE_INVEST_FUND"] = 4] = "ACCOUNT_TYPE_INVEST_FUND";
AccountType[AccountType["UNRECOGNIZED"] = -1] = "UNRECOGNIZED";
})(AccountType || (exports.AccountType = AccountType = {}));
function accountTypeFromJSON(object) {
switch (object) {
case 0:
case "ACCOUNT_TYPE_UNSPECIFIED":
return AccountType.ACCOUNT_TYPE_UNSPECIFIED;
case 1:
case "ACCOUNT_TYPE_TINKOFF":
return AccountType.ACCOUNT_TYPE_TINKOFF;
case 2:
case "ACCOUNT_TYPE_TINKOFF_IIS":
return AccountType.ACCOUNT_TYPE_TINKOFF_IIS;
case 3:
case "ACCOUNT_TYPE_INVEST_BOX":
return AccountType.ACCOUNT_TYPE_INVEST_BOX;
case 4:
case "ACCOUNT_TYPE_INVEST_FUND":
return AccountType.ACCOUNT_TYPE_INVEST_FUND;
case -1:
case "UNRECOGNIZED":
default:
return AccountType.UNRECOGNIZED;
}
}
exports.accountTypeFromJSON = accountTypeFromJSON;
function accountTypeToJSON(object) {
switch (object) {
case AccountType.ACCOUNT_TYPE_UNSPECIFIED:
return "ACCOUNT_TYPE_UNSPECIFIED";
case AccountType.ACCOUNT_TYPE_TINKOFF:
return "ACCOUNT_TYPE_TINKOFF";
case AccountType.ACCOUNT_TYPE_TINKOFF_IIS:
return "ACCOUNT_TYPE_TINKOFF_IIS";
case AccountType.ACCOUNT_TYPE_INVEST_BOX:
return "ACCOUNT_TYPE_INVEST_BOX";
case AccountType.ACCOUNT_TYPE_INVEST_FUND:
return "ACCOUNT_TYPE_INVEST_FUND";
case AccountType.UNRECOGNIZED:
default:
return "UNRECOGNIZED";
}
}
exports.accountTypeToJSON = accountTypeToJSON;
/** Статус счёта. */
var AccountStatus;
(function (AccountStatus) {
/** ACCOUNT_STATUS_UNSPECIFIED - Статус счёта не определён. */
AccountStatus[AccountStatus["ACCOUNT_STATUS_UNSPECIFIED"] = 0] = "ACCOUNT_STATUS_UNSPECIFIED";
/** ACCOUNT_STATUS_NEW - Новый, в процессе открытия. */
AccountStatus[AccountStatus["ACCOUNT_STATUS_NEW"] = 1] = "ACCOUNT_STATUS_NEW";
/** ACCOUNT_STATUS_OPEN - Открытый и активный счёт. */
AccountStatus[AccountStatus["ACCOUNT_STATUS_OPEN"] = 2] = "ACCOUNT_STATUS_OPEN";
/** ACCOUNT_STATUS_CLOSED - Закрытый счёт. */
AccountStatus[AccountStatus["ACCOUNT_STATUS_CLOSED"] = 3] = "ACCOUNT_STATUS_CLOSED";
/** ACCOUNT_STATUS_ALL - Все счета. */
AccountStatus[AccountStatus["ACCOUNT_STATUS_ALL"] = 4] = "ACCOUNT_STATUS_ALL";
AccountStatus[AccountStatus["UNRECOGNIZED"] = -1] = "UNRECOGNIZED";
})(AccountStatus || (exports.AccountStatus = AccountStatus = {}));
function accountStatusFromJSON(object) {
switch (object) {
case 0:
case "ACCOUNT_STATUS_UNSPECIFIED":
return AccountStatus.ACCOUNT_STATUS_UNSPECIFIED;
case 1:
case "ACCOUNT_STATUS_NEW":
return AccountStatus.ACCOUNT_STATUS_NEW;
case 2:
case "ACCOUNT_STATUS_OPEN":
return AccountStatus.ACCOUNT_STATUS_OPEN;
case 3:
case "ACCOUNT_STATUS_CLOSED":
return AccountStatus.ACCOUNT_STATUS_CLOSED;
case 4:
case "ACCOUNT_STATUS_ALL":
return AccountStatus.ACCOUNT_STATUS_ALL;
case -1:
case "UNRECOGNIZED":
default:
return AccountStatus.UNRECOGNIZED;
}
}
exports.accountStatusFromJSON = accountStatusFromJSON;
function accountStatusToJSON(object) {
switch (object) {
case AccountStatus.ACCOUNT_STATUS_UNSPECIFIED:
return "ACCOUNT_STATUS_UNSPECIFIED";
case AccountStatus.ACCOUNT_STATUS_NEW:
return "ACCOUNT_STATUS_NEW";
case AccountStatus.ACCOUNT_STATUS_OPEN:
return "ACCOUNT_STATUS_OPEN";
case AccountStatus.ACCOUNT_STATUS_CLOSED:
return "ACCOUNT_STATUS_CLOSED";
case AccountStatus.ACCOUNT_STATUS_ALL:
return "ACCOUNT_STATUS_ALL";
case AccountStatus.UNRECOGNIZED:
default:
return "UNRECOGNIZED";
}
}
exports.accountStatusToJSON = accountStatusToJSON;
/** Уровень доступа к счёту. */
var AccessLevel;
(function (AccessLevel) {
/** ACCOUNT_ACCESS_LEVEL_UNSPECIFIED - Уровень доступа не определён. */
AccessLevel[AccessLevel["ACCOUNT_ACCESS_LEVEL_UNSPECIFIED"] = 0] = "ACCOUNT_ACCESS_LEVEL_UNSPECIFIED";
/** ACCOUNT_ACCESS_LEVEL_FULL_ACCESS - Полный доступ к счёту. */
AccessLevel[AccessLevel["ACCOUNT_ACCESS_LEVEL_FULL_ACCESS"] = 1] = "ACCOUNT_ACCESS_LEVEL_FULL_ACCESS";
/** ACCOUNT_ACCESS_LEVEL_READ_ONLY - Доступ с уровнем прав «только чтение». */
AccessLevel[AccessLevel["ACCOUNT_ACCESS_LEVEL_READ_ONLY"] = 2] = "ACCOUNT_ACCESS_LEVEL_READ_ONLY";
/** ACCOUNT_ACCESS_LEVEL_NO_ACCESS - Доступа нет. */
AccessLevel[AccessLevel["ACCOUNT_ACCESS_LEVEL_NO_ACCESS"] = 3] = "ACCOUNT_ACCESS_LEVEL_NO_ACCESS";
AccessLevel[AccessLevel["UNRECOGNIZED"] = -1] = "UNRECOGNIZED";
})(AccessLevel || (exports.AccessLevel = AccessLevel = {}));
function accessLevelFromJSON(object) {
switch (object) {
case 0:
case "ACCOUNT_ACCESS_LEVEL_UNSPECIFIED":
return AccessLevel.ACCOUNT_ACCESS_LEVEL_UNSPECIFIED;
case 1:
case "ACCOUNT_ACCESS_LEVEL_FULL_ACCESS":
return AccessLevel.ACCOUNT_ACCESS_LEVEL_FULL_ACCESS;
case 2:
case "ACCOUNT_ACCESS_LEVEL_READ_ONLY":
return AccessLevel.ACCOUNT_ACCESS_LEVEL_READ_ONLY;
case 3:
case "ACCOUNT_ACCESS_LEVEL_NO_ACCESS":
return AccessLevel.ACCOUNT_ACCESS_LEVEL_NO_ACCESS;
case -1:
case "UNRECOGNIZED":
default:
return AccessLevel.UNRECOGNIZED;
}
}
exports.accessLevelFromJSON = accessLevelFromJSON;
function accessLevelToJSON(object) {
switch (object) {
case AccessLevel.ACCOUNT_ACCESS_LEVEL_UNSPECIFIED:
return "ACCOUNT_ACCESS_LEVEL_UNSPECIFIED";
case AccessLevel.ACCOUNT_ACCESS_LEVEL_FULL_ACCESS:
return "ACCOUNT_ACCESS_LEVEL_FULL_ACCESS";
case AccessLevel.ACCOUNT_ACCESS_LEVEL_READ_ONLY:
return "ACCOUNT_ACCESS_LEVEL_READ_ONLY";
case AccessLevel.ACCOUNT_ACCESS_LEVEL_NO_ACCESS:
return "ACCOUNT_ACCESS_LEVEL_NO_ACCESS";
case AccessLevel.UNRECOGNIZED:
default:
return "UNRECOGNIZED";
}
}
exports.accessLevelToJSON = accessLevelToJSON;
function createBaseGetAccountsRequest() {
return { status: undefined };
}
exports.GetAccountsRequest = {
encode(message, writer = minimal_js_1.default.Writer.create()) {
if (message.status !== undefined) {
writer.uint32(8).int32(message.status);
}
return writer;
},
decode(input, length) {
const reader = input instanceof minimal_js_1.default.Reader ? input : minimal_js_1.default.Reader.create(input);
let end = length === undefined ? reader.len : reader.pos + length;
const message = createBaseGetAccountsRequest();
while (reader.pos < end) {
const tag = reader.uint32();
switch (tag >>> 3) {
case 1:
if (tag !== 8) {
break;
}
message.status = reader.int32();
continue;
}
if ((tag & 7) === 4 || tag === 0) {
break;
}
reader.skipType(tag & 7);
}
return message;
},
fromJSON(object) {
return { status: isSet(object.status) ? accountStatusFromJSON(object.status) : undefined };
},
toJSON(message) {
const obj = {};
if (message.status !== undefined) {
obj.status = accountStatusToJSON(message.status);
}
return obj;
},
};
function createBaseGetAccountsResponse() {
return { accounts: [] };
}
exports.GetAccountsResponse = {
encode(message, writer = minimal_js_1.default.Writer.create()) {
for (const v of message.accounts) {
exports.Account.encode(v, writer.uint32(10).fork()).ldelim();
}
return writer;
},
decode(input, length) {
const reader = input instanceof minimal_js_1.default.Reader ? input : minimal_js_1.default.Reader.create(input);
let end = length === undefined ? reader.len : reader.pos + length;
const message = createBaseGetAccountsResponse();
while (reader.pos < end) {
const tag = reader.uint32();
switch (tag >>> 3) {
case 1:
if (tag !== 10) {
break;
}
message.accounts.push(exports.Account.decode(reader, reader.uint32()));
continue;
}
if ((tag & 7) === 4 || tag === 0) {
break;
}
reader.skipType(tag & 7);
}
return message;
},
fromJSON(object) {
return {
accounts: globalThis.Array.isArray(object?.accounts) ? object.accounts.map((e) => exports.Account.fromJSON(e)) : [],
};
},
toJSON(message) {
const obj = {};
if (message.accounts?.length) {
obj.accounts = message.accounts.map((e) => exports.Account.toJSON(e));
}
return obj;
},
};
function createBaseAccount() {
return { id: "", type: 0, name: "", status: 0, openedDate: undefined, closedDate: undefined, accessLevel: 0 };
}
exports.Account = {
encode(message, writer = minimal_js_1.default.Writer.create()) {
if (message.id !== "") {
writer.uint32(10).string(message.id);
}
if (message.type !== 0) {
writer.uint32(16).int32(message.type);
}
if (message.name !== "") {
writer.uint32(26).string(message.name);
}
if (message.status !== 0) {
writer.uint32(32).int32(message.status);
}
if (message.openedDate !== undefined) {
timestamp_js_1.Timestamp.encode(toTimestamp(message.openedDate), writer.uint32(42).fork()).ldelim();
}
if (message.closedDate !== undefined) {
timestamp_js_1.Timestamp.encode(toTimestamp(message.closedDate), writer.uint32(50).fork()).ldelim();
}
if (message.accessLevel !== 0) {
writer.uint32(56).int32(message.accessLevel);
}
return writer;
},
decode(input, length) {
const reader = input instanceof minimal_js_1.default.Reader ? input : minimal_js_1.default.Reader.create(input);
let end = length === undefined ? reader.len : reader.pos + length;
const message = createBaseAccount();
while (reader.pos < end) {
const tag = reader.uint32();
switch (tag >>> 3) {
case 1:
if (tag !== 10) {
break;
}
message.id = reader.string();
continue;
case 2:
if (tag !== 16) {
break;
}
message.type = reader.int32();
continue;
case 3:
if (tag !== 26) {
break;
}
message.name = reader.string();
continue;
case 4:
if (tag !== 32) {
break;
}
message.status = reader.int32();
continue;
case 5:
if (tag !== 42) {
break;
}
message.openedDate = fromTimestamp(timestamp_js_1.Timestamp.decode(reader, reader.uint32()));
continue;
case 6:
if (tag !== 50) {
break;
}
message.closedDate = fromTimestamp(timestamp_js_1.Timestamp.decode(reader, reader.uint32()));
continue;
case 7:
if (tag !== 56) {
break;
}
message.accessLevel = reader.int32();
continue;
}
if ((tag & 7) === 4 || tag === 0) {
break;
}
reader.skipType(tag & 7);
}
return message;
},
fromJSON(object) {
return {
id: isSet(object.id) ? globalThis.String(object.id) : "",
type: isSet(object.type) ? accountTypeFromJSON(object.type) : 0,
name: isSet(object.name) ? globalThis.String(object.name) : "",
status: isSet(object.status) ? accountStatusFromJSON(object.status) : 0,
openedDate: isSet(object.openedDate) ? fromJsonTimestamp(object.openedDate) : undefined,
closedDate: isSet(object.closedDate) ? fromJsonTimestamp(object.closedDate) : undefined,
accessLevel: isSet(object.accessLevel) ? accessLevelFromJSON(object.accessLevel) : 0,
};
},
toJSON(message) {
const obj = {};
if (message.id !== "") {
obj.id = message.id;
}
if (message.type !== 0) {
obj.type = accountTypeToJSON(message.type);
}
if (message.name !== "") {
obj.name = message.name;
}
if (message.status !== 0) {
obj.status = accountStatusToJSON(message.status);
}
if (message.openedDate !== undefined) {
obj.openedDate = message.openedDate.toISOString();
}
if (message.closedDate !== undefined) {
obj.closedDate = message.closedDate.toISOString();
}
if (message.accessLevel !== 0) {
obj.accessLevel = accessLevelToJSON(message.accessLevel);
}
return obj;
},
};
function createBaseGetMarginAttributesRequest() {
return { accountId: "" };
}
exports.GetMarginAttributesRequest = {
encode(message, writer = minimal_js_1.default.Writer.create()) {
if (message.accountId !== "") {
writer.uint32(10).string(message.accountId);
}
return writer;
},
decode(input, length) {
const reader = input instanceof minimal_js_1.default.Reader ? input : minimal_js_1.default.Reader.create(input);
let end = length === undefined ? reader.len : reader.pos + length;
const message = createBaseGetMarginAttributesRequest();
while (reader.pos < end) {
const tag = reader.uint32();
switch (tag >>> 3) {
case 1:
if (tag !== 10) {
break;
}
message.accountId = reader.string();
continue;
}
if ((tag & 7) === 4 || tag === 0) {
break;
}
reader.skipType(tag & 7);
}
return message;
},
fromJSON(object) {
return { accountId: isSet(object.accountId) ? globalThis.String(object.accountId) : "" };
},
toJSON(message) {
const obj = {};
if (message.accountId !== "") {
obj.accountId = message.accountId;
}
return obj;
},
};
function createBaseGetMarginAttributesResponse() {
return {
liquidPortfolio: undefined,
startingMargin: undefined,
minimalMargin: undefined,
fundsSufficiencyLevel: undefined,
amountOfMissingFunds: undefined,
correctedMargin: undefined,
};
}
exports.GetMarginAttributesResponse = {
encode(message, writer = minimal_js_1.default.Writer.create()) {
if (message.liquidPortfolio !== undefined) {
common_js_1.MoneyValue.encode(message.liquidPortfolio, writer.uint32(10).fork()).ldelim();
}
if (message.startingMargin !== undefined) {
common_js_1.MoneyValue.encode(message.startingMargin, writer.uint32(18).fork()).ldelim();
}
if (message.minimalMargin !== undefined) {
common_js_1.MoneyValue.encode(message.minimalMargin, writer.uint32(26).fork()).ldelim();
}
if (message.fundsSufficiencyLevel !== undefined) {
common_js_1.Quotation.encode(message.fundsSufficiencyLevel, writer.uint32(34).fork()).ldelim();
}
if (message.amountOfMissingFunds !== undefined) {
common_js_1.MoneyValue.encode(message.amountOfMissingFunds, writer.uint32(42).fork()).ldelim();
}
if (message.correctedMargin !== undefined) {
common_js_1.MoneyValue.encode(message.correctedMargin, writer.uint32(50).fork()).ldelim();
}
return writer;
},
decode(input, length) {
const reader = input instanceof minimal_js_1.default.Reader ? input : minimal_js_1.default.Reader.create(input);
let end = length === undefined ? reader.len : reader.pos + length;
const message = createBaseGetMarginAttributesResponse();
while (reader.pos < end) {
const tag = reader.uint32();
switch (tag >>> 3) {
case 1:
if (tag !== 10) {
break;
}
message.liquidPortfolio = common_js_1.MoneyValue.decode(reader, reader.uint32());
continue;
case 2:
if (tag !== 18) {
break;
}
message.startingMargin = common_js_1.MoneyValue.decode(reader, reader.uint32());
continue;
case 3:
if (tag !== 26) {
break;
}
message.minimalMargin = common_js_1.MoneyValue.decode(reader, reader.uint32());
continue;
case 4:
if (tag !== 34) {
break;
}
message.fundsSufficiencyLevel = common_js_1.Quotation.decode(reader, reader.uint32());
continue;
case 5:
if (tag !== 42) {
break;
}
message.amountOfMissingFunds = common_js_1.MoneyValue.decode(reader, reader.uint32());
continue;
case 6:
if (tag !== 50) {
break;
}
message.correctedMargin = common_js_1.MoneyValue.decode(reader, reader.uint32());
continue;
}
if ((tag & 7) === 4 || tag === 0) {
break;
}
reader.skipType(tag & 7);
}
return message;
},
fromJSON(object) {
return {
liquidPortfolio: isSet(object.liquidPortfolio) ? common_js_1.MoneyValue.fromJSON(object.liquidPortfolio) : undefined,
startingMargin: isSet(object.startingMargin) ? common_js_1.MoneyValue.fromJSON(object.startingMargin) : undefined,
minimalMargin: isSet(object.minimalMargin) ? common_js_1.MoneyValue.fromJSON(object.minimalMargin) : undefined,
fundsSufficiencyLevel: isSet(object.fundsSufficiencyLevel)
? common_js_1.Quotation.fromJSON(object.fundsSufficiencyLevel)
: undefined,
amountOfMissingFunds: isSet(object.amountOfMissingFunds)
? common_js_1.MoneyValue.fromJSON(object.amountOfMissingFunds)
: undefined,
correctedMargin: isSet(object.correctedMargin) ? common_js_1.MoneyValue.fromJSON(object.correctedMargin) : undefined,
};
},
toJSON(message) {
const obj = {};
if (message.liquidPortfolio !== undefined) {
obj.liquidPortfolio = common_js_1.MoneyValue.toJSON(message.liquidPortfolio);
}
if (message.startingMargin !== undefined) {
obj.startingMargin = common_js_1.MoneyValue.toJSON(message.startingMargin);
}
if (message.minimalMargin !== undefined) {
obj.minimalMargin = common_js_1.MoneyValue.toJSON(message.minimalMargin);
}
if (message.fundsSufficiencyLevel !== undefined) {
obj.fundsSufficiencyLevel = common_js_1.Quotation.toJSON(message.fundsSufficiencyLevel);
}
if (message.amountOfMissingFunds !== undefined) {
obj.amountOfMissingFunds = common_js_1.MoneyValue.toJSON(message.amountOfMissingFunds);
}
if (message.correctedMargin !== undefined) {
obj.correctedMargin = common_js_1.MoneyValue.toJSON(message.correctedMargin);
}
return obj;
},
};
function createBaseGetUserTariffRequest() {
return {};
}
exports.GetUserTariffRequest = {
encode(_, writer = minimal_js_1.default.Writer.create()) {
return writer;
},
decode(input, length) {
const reader = input instanceof minimal_js_1.default.Reader ? input : minimal_js_1.default.Reader.create(input);
let end = length === undefined ? reader.len : reader.pos + length;
const message = createBaseGetUserTariffRequest();
while (reader.pos < end) {
const tag = reader.uint32();
switch (tag >>> 3) {
}
if ((tag & 7) === 4 || tag === 0) {
break;
}
reader.skipType(tag & 7);
}
return message;
},
fromJSON(_) {
return {};
},
toJSON(_) {
const obj = {};
return obj;
},
};
function createBaseGetUserTariffResponse() {
return { unaryLimits: [], streamLimits: [] };
}
exports.GetUserTariffResponse = {
encode(message, writer = minimal_js_1.default.Writer.create()) {
for (const v of message.unaryLimits) {
exports.UnaryLimit.encode(v, writer.uint32(10).fork()).ldelim();
}
for (const v of message.streamLimits) {
exports.StreamLimit.encode(v, writer.uint32(18).fork()).ldelim();
}
return writer;
},
decode(input, length) {
const reader = input instanceof minimal_js_1.default.Reader ? input : minimal_js_1.default.Reader.create(input);
let end = length === undefined ? reader.len : reader.pos + length;
const message = createBaseGetUserTariffResponse();
while (reader.pos < end) {
const tag = reader.uint32();
switch (tag >>> 3) {
case 1:
if (tag !== 10) {
break;
}
message.unaryLimits.push(exports.UnaryLimit.decode(reader, reader.uint32()));
continue;
case 2:
if (tag !== 18) {
break;
}
message.streamLimits.push(exports.StreamLimit.decode(reader, reader.uint32()));
continue;
}
if ((tag & 7) === 4 || tag === 0) {
break;
}
reader.skipType(tag & 7);
}
return message;
},
fromJSON(object) {
return {
unaryLimits: globalThis.Array.isArray(object?.unaryLimits)
? object.unaryLimits.map((e) => exports.UnaryLimit.fromJSON(e))
: [],
streamLimits: globalThis.Array.isArray(object?.streamLimits)
? object.streamLimits.map((e) => exports.StreamLimit.fromJSON(e))
: [],
};
},
toJSON(message) {
const obj = {};
if (message.unaryLimits?.length) {
obj.unaryLimits = message.unaryLimits.map((e) => exports.UnaryLimit.toJSON(e));
}
if (message.streamLimits?.length) {
obj.streamLimits = message.streamLimits.map((e) => exports.StreamLimit.toJSON(e));
}
return obj;
},
};
function createBaseUnaryLimit() {
return { limitPerMinute: 0, methods: [] };
}
exports.UnaryLimit = {
encode(message, writer = minimal_js_1.default.Writer.create()) {
if (message.limitPerMinute !== 0) {
writer.uint32(8).int32(message.limitPerMinute);
}
for (const v of message.methods) {
writer.uint32(18).string(v);
}
return writer;
},
decode(input, length) {
const reader = input instanceof minimal_js_1.default.Reader ? input : minimal_js_1.default.Reader.create(input);
let end = length === undefined ? reader.len : reader.pos + length;
const message = createBaseUnaryLimit();
while (reader.pos < end) {
const tag = reader.uint32();
switch (tag >>> 3) {
case 1:
if (tag !== 8) {
break;
}
message.limitPerMinute = reader.int32();
continue;
case 2:
if (tag !== 18) {
break;
}
message.methods.push(reader.string());
continue;
}
if ((tag & 7) === 4 || tag === 0) {
break;
}
reader.skipType(tag & 7);
}
return message;
},
fromJSON(object) {
return {
limitPerMinute: isSet(object.limitPerMinute) ? globalThis.Number(object.limitPerMinute) : 0,
methods: globalThis.Array.isArray(object?.methods) ? object.methods.map((e) => globalThis.String(e)) : [],
};
},
toJSON(message) {
const obj = {};
if (message.limitPerMinute !== 0) {
obj.limitPerMinute = Math.round(message.limitPerMinute);
}
if (message.methods?.length) {
obj.methods = message.methods;
}
return obj;
},
};
function createBaseStreamLimit() {
return { limit: 0, streams: [], open: 0 };
}
exports.StreamLimit = {
encode(message, writer = minimal_js_1.default.Writer.create()) {
if (message.limit !== 0) {
writer.uint32(8).int32(message.limit);
}
for (const v of message.streams) {
writer.uint32(18).string(v);
}
if (message.open !== 0) {
writer.uint32(24).int32(message.open);
}
return writer;
},
decode(input, length) {
const reader = input instanceof minimal_js_1.default.Reader ? input : minimal_js_1.default.Reader.create(input);
let end = length === undefined ? reader.len : reader.pos + length;
const message = createBaseStreamLimit();
while (reader.pos < end) {
const tag = reader.uint32();
switch (tag >>> 3) {
case 1:
if (tag !== 8) {
break;
}
message.limit = reader.int32();
continue;
case 2:
if (tag !== 18) {
break;
}
message.streams.push(reader.string());
continue;
case 3:
if (tag !== 24) {
break;
}
message.open = reader.int32();
continue;
}
if ((tag & 7) === 4 || tag === 0) {
break;
}
reader.skipType(tag & 7);
}
return message;
},
fromJSON(object) {
return {
limit: isSet(object.limit) ? globalThis.Number(object.limit) : 0,
streams: globalThis.Array.isArray(object?.streams) ? object.streams.map((e) => globalThis.String(e)) : [],
open: isSet(object.open) ? globalThis.Number(object.open) : 0,
};
},
toJSON(message) {
const obj = {};
if (message.limit !== 0) {
obj.limit = Math.round(message.limit);
}
if (message.streams?.length) {
obj.streams = message.streams;
}
if (message.open !== 0) {
obj.open = Math.round(message.open);
}
return obj;
},
};
function createBaseGetInfoRequest() {
return {};
}
exports.GetInfoRequest = {
encode(_, writer = minimal_js_1.default.Writer.create()) {
return writer;
},
decode(input, length) {
const reader = input instanceof minimal_js_1.default.Reader ? input : minimal_js_1.default.Reader.create(input);
let end = length === undefined ? reader.len : reader.pos + length;
const message = createBaseGetInfoRequest();
while (reader.pos < end) {
const tag = reader.uint32();
switch (tag >>> 3) {
}
if ((tag & 7) === 4 || tag === 0) {
break;
}
reader.skipType(tag & 7);
}
return message;
},
fromJSON(_) {
return {};
},
toJSON(_) {
const obj = {};
return obj;
},
};
function createBaseGetInfoResponse() {
return { premStatus: false, qualStatus: false, qualifiedForWorkWith: [], tariff: "" };
}
exports.GetInfoResponse = {
encode(message, writer = minimal_js_1.default.Writer.create()) {
if (message.premStatus === true) {
writer.uint32(8).bool(message.premStatus);
}
if (message.qualStatus === true) {
writer.uint32(16).bool(message.qualStatus);
}
for (const v of message.qualifiedForWorkWith) {
writer.uint32(26).string(v);
}
if (message.tariff !== "") {
writer.uint32(34).string(message.tariff);
}
return writer;
},
decode(input, length) {
const reader = input instanceof minimal_js_1.default.Reader ? input : minimal_js_1.default.Reader.create(input);
let end = length === undefined ? reader.len : reader.pos + length;
const message = createBaseGetInfoResponse();
while (reader.pos < end) {
const tag = reader.uint32();
switch (tag >>> 3) {
case 1:
if (tag !== 8) {
break;
}
message.premStatus = reader.bool();
continue;
case 2:
if (tag !== 16) {
break;
}
message.qualStatus = reader.bool();
continue;
case 3:
if (tag !== 26) {
break;
}
message.qualifiedForWorkWith.push(reader.string());
continue;
case 4:
if (tag !== 34) {
break;
}
message.tariff = reader.string();
continue;
}
if ((tag & 7) === 4 || tag === 0) {
break;
}
reader.skipType(tag & 7);
}
return message;
},
fromJSON(object) {
return {
premStatus: isSet(object.premStatus) ? globalThis.Boolean(object.premStatus) : false,
qualStatus: isSet(object.qualStatus) ? globalThis.Boolean(object.qualStatus) : false,
qualifiedForWorkWith: globalThis.Array.isArray(object?.qualifiedForWorkWith)
? object.qualifiedForWorkWith.map((e) => globalThis.String(e))
: [],
tariff: isSet(object.tariff) ? globalThis.String(object.tariff) : "",
};
},
toJSON(message) {
const obj = {};
if (message.premStatus === true) {
obj.premStatus = message.premStatus;
}
if (message.qualStatus === true) {
obj.qualStatus = message.qualStatus;
}
if (message.qualifiedForWorkWith?.length) {
obj.qualifiedForWorkWith = message.qualifiedForWorkWith;
}
if (message.tariff !== "") {
obj.tariff = message.tariff;
}
return obj;
},
};
exports.UsersServiceDefinition = {
name: "UsersService",
fullName: "tinkoff.public.invest.api.contract.v1.UsersService",
methods: {
/** Получить счета пользователя. */
getAccounts: {
name: "GetAccounts",
requestType: exports.GetAccountsRequest,
requestStream: false,
responseType: exports.GetAccountsResponse,
responseStream: false,
options: {},
},
/** Рассчитать маржинальные показатели по счёту. */
getMarginAttributes: {
name: "GetMarginAttributes",
requestType: exports.GetMarginAttributesRequest,
requestStream: false,
responseType: exports.GetMarginAttributesResponse,
responseStream: false,
options: {},
},
/** Запросить тариф пользователя. */
getUserTariff: {
name: "GetUserTariff",
requestType: exports.GetUserTariffRequest,
requestStream: false,
responseType: exports.GetUserTariffResponse,
responseStream: false,
options: {},
},
/** Получить информацию о пользователе. */
getInfo: {
name: "GetInfo",
requestType: exports.GetInfoRequest,
requestStream: false,
responseType: exports.GetInfoResponse,
responseStream: false,
options: {},
},
},
};
function toTimestamp(date) {
const seconds = date.getTime() / 1000;
const nanos = (date.getTime() % 1000) * 1000000;
return { seconds, nanos };
}
function fromTimestamp(t) {
let millis = (t.seconds || 0) * 1000;
millis += (t.nanos || 0) / 1000000;
return new globalThis.Date(millis);
}
function fromJsonTimestamp(o) {
if (o instanceof globalThis.Date) {
return o;
}
else if (typeof o === "string") {
return new globalThis.Date(o);
}
else {
return fromTimestamp(timestamp_js_1.Timestamp.fromJSON(o));
}
}
function isSet(value) {
return value !== null && value !== undefined;
}
//# sourceMappingURL=users.js.map