@silvana-one/orderbook 1.1.8 → 1.1.9

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (41) hide show
  1. package/dist/node/index.cjs +262 -5
  2. package/dist/node/index.d.ts +2 -1
  3. package/dist/node/index.js +2 -1
  4. package/dist/node/index.js.map +1 -1
  5. package/dist/node/{grpc.d.ts → orderbook.d.ts} +48 -1
  6. package/dist/{web/grpc.js → node/orderbook.js} +50 -2
  7. package/dist/node/orderbook.js.map +1 -0
  8. package/dist/node/pricing.d.ts +81 -0
  9. package/dist/node/pricing.js +115 -0
  10. package/dist/node/pricing.js.map +1 -0
  11. package/dist/node/proto/silvana/orderbook/v1/orderbook_pb.d.ts +398 -0
  12. package/dist/node/proto/silvana/orderbook/v1/orderbook_pb.js +47 -2
  13. package/dist/node/proto/silvana/orderbook/v1/orderbook_pb.js.map +1 -1
  14. package/dist/node/proto/silvana/pricing/v1/pricing_pb.d.ts +794 -0
  15. package/dist/node/proto/silvana/pricing/v1/pricing_pb.js +119 -0
  16. package/dist/node/proto/silvana/pricing/v1/pricing_pb.js.map +1 -0
  17. package/dist/tsconfig.tsbuildinfo +1 -1
  18. package/dist/tsconfig.web.tsbuildinfo +1 -1
  19. package/dist/web/index.d.ts +2 -1
  20. package/dist/web/index.js +2 -1
  21. package/dist/web/index.js.map +1 -1
  22. package/dist/web/{grpc.d.ts → orderbook.d.ts} +48 -1
  23. package/dist/{node/grpc.js → web/orderbook.js} +50 -2
  24. package/dist/web/orderbook.js.map +1 -0
  25. package/dist/web/pricing.d.ts +81 -0
  26. package/dist/web/pricing.js +115 -0
  27. package/dist/web/pricing.js.map +1 -0
  28. package/dist/web/proto/silvana/orderbook/v1/orderbook_pb.d.ts +398 -0
  29. package/dist/web/proto/silvana/orderbook/v1/orderbook_pb.js +47 -2
  30. package/dist/web/proto/silvana/orderbook/v1/orderbook_pb.js.map +1 -1
  31. package/dist/web/proto/silvana/pricing/v1/pricing_pb.d.ts +794 -0
  32. package/dist/web/proto/silvana/pricing/v1/pricing_pb.js +119 -0
  33. package/dist/web/proto/silvana/pricing/v1/pricing_pb.js.map +1 -0
  34. package/package.json +4 -2
  35. package/src/index.ts +2 -1
  36. package/src/{grpc.ts → orderbook.ts} +91 -0
  37. package/src/pricing.ts +187 -0
  38. package/src/proto/silvana/orderbook/v1/orderbook_pb.ts +475 -2
  39. package/src/proto/silvana/pricing/v1/pricing_pb.ts +950 -0
  40. package/dist/node/grpc.js.map +0 -1
  41. package/dist/web/grpc.js.map +0 -1
@@ -0,0 +1,950 @@
1
+ // @generated by protoc-gen-es v2.10.1 with parameter "target=ts,js_import_style=module"
2
+ // @generated from file proto/silvana/pricing/v1/pricing.proto (package silvana.pricing.v1, syntax proto3)
3
+ /* eslint-disable */
4
+
5
+ import type { GenFile, GenMessage, GenService } from "@bufbuild/protobuf/codegenv2";
6
+ import { fileDesc, messageDesc, serviceDesc } from "@bufbuild/protobuf/codegenv2";
7
+ import type { Timestamp } from "@bufbuild/protobuf/wkt";
8
+ import { file_google_protobuf_struct, file_google_protobuf_timestamp } from "@bufbuild/protobuf/wkt";
9
+ import type { JsonObject, Message } from "@bufbuild/protobuf";
10
+
11
+ /**
12
+ * Describes the file proto/silvana/pricing/v1/pricing.proto.
13
+ */
14
+ export const file_proto_silvana_pricing_v1_pricing: GenFile = /*@__PURE__*/
15
+ fileDesc("CiZwcm90by9zaWx2YW5hL3ByaWNpbmcvdjEvcHJpY2luZy5wcm90bxISc2lsdmFuYS5wcmljaW5nLnYxIkQKD0dldFByaWNlUmVxdWVzdBIRCgltYXJrZXRfaWQYASABKAkSEwoGc291cmNlGAIgASgJSACIAQFCCQoHX3NvdXJjZSLMAgoQR2V0UHJpY2VSZXNwb25zZRIRCgltYXJrZXRfaWQYASABKAkSEAoDYmlkGAIgASgBSACIAQESEAoDYXNrGAMgASgBSAGIAQESDAoEbGFzdBgEIAEoARIXCgp2b2x1bWVfMjRoGAUgASgBSAKIAQESHwoSY2hhbmdlXzI0aF9wZXJjZW50GAYgASgBSAOIAQESFQoIaGlnaF8yNGgYByABKAFIBIgBARIUCgdsb3dfMjRoGAggASgBSAWIAQESDgoGc291cmNlGAkgASgJEi0KCXRpbWVzdGFtcBgKIAEoCzIaLmdvb2dsZS5wcm90b2J1Zi5UaW1lc3RhbXBCBgoEX2JpZEIGCgRfYXNrQg0KC192b2x1bWVfMjRoQhUKE19jaGFuZ2VfMjRoX3BlcmNlbnRCCwoJX2hpZ2hfMjRoQgoKCF9sb3dfMjRoIkYKEEdldFByaWNlc1JlcXVlc3QSEgoKbWFya2V0X2lkcxgBIAMoCRITCgZzb3VyY2UYAiABKAlIAIgBAUIJCgdfc291cmNlIj4KEUdldFByaWNlc1Jlc3BvbnNlEikKBnByaWNlcxgBIAMoCzIZLnNpbHZhbmEucHJpY2luZy52MS5QcmljZSLBAgoFUHJpY2USEQoJbWFya2V0X2lkGAEgASgJEhAKA2JpZBgCIAEoAUgAiAEBEhAKA2FzaxgDIAEoAUgBiAEBEgwKBGxhc3QYBCABKAESFwoKdm9sdW1lXzI0aBgFIAEoAUgCiAEBEh8KEmNoYW5nZV8yNGhfcGVyY2VudBgGIAEoAUgDiAEBEhUKCGhpZ2hfMjRoGAcgASgBSASIAQESFAoHbG93XzI0aBgIIAEoAUgFiAEBEg4KBnNvdXJjZRgJIAEoCRItCgl0aW1lc3RhbXAYCiABKAsyGi5nb29nbGUucHJvdG9idWYuVGltZXN0YW1wQgYKBF9iaWRCBgoEX2Fza0INCgtfdm9sdW1lXzI0aEIVChNfY2hhbmdlXzI0aF9wZXJjZW50QgsKCV9oaWdoXzI0aEIKCghfbG93XzI0aCL5AQoQR2V0S2xpbmVzUmVxdWVzdBIRCgltYXJrZXRfaWQYASABKAkSEAoIaW50ZXJ2YWwYAiABKAkSEgoFbGltaXQYAyABKAVIAIgBARIzCgpzdGFydF90aW1lGAQgASgLMhouZ29vZ2xlLnByb3RvYnVmLlRpbWVzdGFtcEgBiAEBEjEKCGVuZF90aW1lGAUgASgLMhouZ29vZ2xlLnByb3RvYnVmLlRpbWVzdGFtcEgCiAEBEhMKBnNvdXJjZRgGIAEoCUgDiAEBQggKBl9saW1pdEINCgtfc3RhcnRfdGltZUILCglfZW5kX3RpbWVCCQoHX3NvdXJjZSJzChFHZXRLbGluZXNSZXNwb25zZRIRCgltYXJrZXRfaWQYASABKAkSEAoIaW50ZXJ2YWwYAiABKAkSKQoGa2xpbmVzGAMgAygLMhkuc2lsdmFuYS5wcmljaW5nLnYxLktsaW5lEg4KBnNvdXJjZRgEIAEoCSLUAQoFS2xpbmUSLQoJb3Blbl90aW1lGAEgASgLMhouZ29vZ2xlLnByb3RvYnVmLlRpbWVzdGFtcBIMCgRvcGVuGAIgASgBEgwKBGhpZ2gYAyABKAESCwoDbG93GAQgASgBEg0KBWNsb3NlGAUgASgBEg4KBnZvbHVtZRgGIAEoARIuCgpjbG9zZV90aW1lGAcgASgLMhouZ29vZ2xlLnByb3RvYnVmLlRpbWVzdGFtcBIUCgxxdW90ZV92b2x1bWUYCCABKAESDgoGdHJhZGVzGAkgASgFImYKE0dldE9yZGVyQm9va1JlcXVlc3QSEQoJbWFya2V0X2lkGAEgASgJEhIKBWRlcHRoGAIgASgFSACIAQESEwoGc291cmNlGAMgASgJSAGIAQFCCAoGX2RlcHRoQgkKB19zb3VyY2UizAEKFEdldE9yZGVyQm9va1Jlc3BvbnNlEhEKCW1hcmtldF9pZBgBIAEoCRIwCgRiaWRzGAIgAygLMiIuc2lsdmFuYS5wcmljaW5nLnYxLk9yZGVyQm9va0xldmVsEjAKBGFza3MYAyADKAsyIi5zaWx2YW5hLnByaWNpbmcudjEuT3JkZXJCb29rTGV2ZWwSLQoJdGltZXN0YW1wGAQgASgLMhouZ29vZ2xlLnByb3RvYnVmLlRpbWVzdGFtcBIOCgZzb3VyY2UYBSABKAkiMQoOT3JkZXJCb29rTGV2ZWwSDQoFcHJpY2UYASABKAESEAoIcXVhbnRpdHkYAiABKAEijwEKE1N0cmVhbVByaWNlc1JlcXVlc3QSEgoKbWFya2V0X2lkcxgBIAMoCRIeChFpbmNsdWRlX29yZGVyYm9vaxgCIAEoCEgAiAEBEhsKDmluY2x1ZGVfdHJhZGVzGAMgASgISAGIAQFCFAoSX2luY2x1ZGVfb3JkZXJib29rQhEKD19pbmNsdWRlX3RyYWRlcyLMAgoLUHJpY2VVcGRhdGUSEQoJbWFya2V0X2lkGAEgASgJEg0KBXByaWNlGAIgASgBEhAKA2JpZBgDIAEoAUgAiAEBEhAKA2FzaxgEIAEoAUgBiAEBEhMKBnZvbHVtZRgFIAEoAUgCiAEBEg4KBnNvdXJjZRgGIAEoCRItCgl0aW1lc3RhbXAYByABKAsyGi5nb29nbGUucHJvdG9idWYuVGltZXN0YW1wEjsKCW9yZGVyYm9vaxgIIAEoCzIjLnNpbHZhbmEucHJpY2luZy52MS5PcmRlckJvb2tVcGRhdGVIA4gBARIzCgV0cmFkZRgJIAEoCzIfLnNpbHZhbmEucHJpY2luZy52MS5UcmFkZVVwZGF0ZUgEiAEBQgYKBF9iaWRCBgoEX2Fza0IJCgdfdm9sdW1lQgwKCl9vcmRlcmJvb2tCCAoGX3RyYWRlInUKD09yZGVyQm9va1VwZGF0ZRIwCgRiaWRzGAEgAygLMiIuc2lsdmFuYS5wcmljaW5nLnYxLk9yZGVyQm9va0xldmVsEjAKBGFza3MYAiADKAsyIi5zaWx2YW5hLnByaWNpbmcudjEuT3JkZXJCb29rTGV2ZWwidQoLVHJhZGVVcGRhdGUSDQoFcHJpY2UYASABKAESEAoIcXVhbnRpdHkYAiABKAESFgoOaXNfYnV5ZXJfbWFrZXIYAyABKAgSLQoJdGltZXN0YW1wGAQgASgLMhouZ29vZ2xlLnByb3RvYnVmLlRpbWVzdGFtcCJdChVHZXRQaXZvdFBvaW50c1JlcXVlc3QSEQoJbWFya2V0X2lkGAEgASgJEhEKCXRpbWVmcmFtZRgCIAEoCRITCgZzb3VyY2UYAyABKAlIAIgBAUIJCgdfc291cmNlIqADChZHZXRQaXZvdFBvaW50c1Jlc3BvbnNlEhEKCW1hcmtldF9pZBgBIAEoCRIwCgdjbGFzc2ljGAIgASgLMh8uc2lsdmFuYS5wcmljaW5nLnYxLlBpdm90UG9pbnRzEjcKCWZpYm9uYWNjaRgDIAEoCzIfLnNpbHZhbmEucHJpY2luZy52MS5QaXZvdFBvaW50c0gAiAEBEjcKCWNhbWFyaWxsYRgEIAEoCzIfLnNpbHZhbmEucHJpY2luZy52MS5QaXZvdFBvaW50c0gBiAEBEjQKBndvb2RpZRgFIAEoCzIfLnNpbHZhbmEucHJpY2luZy52MS5QaXZvdFBvaW50c0gCiAEBEjQKBmRlbWFyaxgGIAEoCzIfLnNpbHZhbmEucHJpY2luZy52MS5QaXZvdFBvaW50c0gDiAEBEjEKDWNhbGN1bGF0ZWRfYXQYByABKAsyGi5nb29nbGUucHJvdG9idWYuVGltZXN0YW1wQgwKCl9maWJvbmFjY2lCDAoKX2NhbWFyaWxsYUIJCgdfd29vZGllQgkKB19kZW1hcmsilAEKC1Bpdm90UG9pbnRzEg0KBXBpdm90GAEgASgBEgoKAnIxGAIgASgBEgoKAnIyGAMgASgBEgoKAnIzGAQgASgBEgoKAnMxGAUgASgBEgoKAnMyGAYgASgBEgoKAnMzGAcgASgBEg8KAnI0GAggASgBSACIAQESDwoCczQYCSABKAFIAYgBAUIFCgNfcjRCBQoDX3M0ItQDCg9QcmljZUZlZWRDb25maWcSPgoGZGlyZWN0GAEgAygLMi4uc2lsdmFuYS5wcmljaW5nLnYxLlByaWNlRmVlZENvbmZpZy5EaXJlY3RGZWVkEkkKCXN5bnRoZXRpYxgCIAEoCzIxLnNpbHZhbmEucHJpY2luZy52MS5QcmljZUZlZWRDb25maWcuU3ludGhldGljRmVlZEgAiAEBGowBCgpEaXJlY3RGZWVkEg4KBnNvdXJjZRgBIAEoCRIOCgZzeW1ib2wYAiABKAkSDwoHZW5hYmxlZBgDIAEoCBIQCghwcmlvcml0eRgEIAEoBRIuCghtZXRhZGF0YRgFIAEoCzIXLmdvb2dsZS5wcm90b2J1Zi5TdHJ1Y3RIAIgBAUILCglfbWV0YWRhdGEamAEKDVN5bnRoZXRpY0ZlZWQSDAoEdHlwZRgBIAEoCRITCgtiYXNlX21hcmtldBgCIAEoCRIUCgxxdW90ZV9tYXJrZXQYAyABKAkSEQoJb3BlcmF0aW9uGAQgASgJEi4KCG1ldGFkYXRhGAUgASgLMhcuZ29vZ2xlLnByb3RvYnVmLlN0cnVjdEgAiAEBQgsKCV9tZXRhZGF0YUIMCgpfc3ludGhldGljMsMECg5QcmljaW5nU2VydmljZRJVCghHZXRQcmljZRIjLnNpbHZhbmEucHJpY2luZy52MS5HZXRQcmljZVJlcXVlc3QaJC5zaWx2YW5hLnByaWNpbmcudjEuR2V0UHJpY2VSZXNwb25zZRJYCglHZXRQcmljZXMSJC5zaWx2YW5hLnByaWNpbmcudjEuR2V0UHJpY2VzUmVxdWVzdBolLnNpbHZhbmEucHJpY2luZy52MS5HZXRQcmljZXNSZXNwb25zZRJYCglHZXRLbGluZXMSJC5zaWx2YW5hLnByaWNpbmcudjEuR2V0S2xpbmVzUmVxdWVzdBolLnNpbHZhbmEucHJpY2luZy52MS5HZXRLbGluZXNSZXNwb25zZRJhCgxHZXRPcmRlckJvb2sSJy5zaWx2YW5hLnByaWNpbmcudjEuR2V0T3JkZXJCb29rUmVxdWVzdBooLnNpbHZhbmEucHJpY2luZy52MS5HZXRPcmRlckJvb2tSZXNwb25zZRJaCgxTdHJlYW1QcmljZXMSJy5zaWx2YW5hLnByaWNpbmcudjEuU3RyZWFtUHJpY2VzUmVxdWVzdBofLnNpbHZhbmEucHJpY2luZy52MS5QcmljZVVwZGF0ZTABEmcKDkdldFBpdm90UG9pbnRzEikuc2lsdmFuYS5wcmljaW5nLnYxLkdldFBpdm90UG9pbnRzUmVxdWVzdBoqLnNpbHZhbmEucHJpY2luZy52MS5HZXRQaXZvdFBvaW50c1Jlc3BvbnNlQjJaMGdpdGh1Yi5jb20vU2lsdmFuYU9uZS9jYW50b24tYWdlbnQvcHJvdG87cHJpY2luZ2IGcHJvdG8z", [file_google_protobuf_timestamp, file_google_protobuf_struct]);
16
+
17
+ /**
18
+ * @generated from message silvana.pricing.v1.GetPriceRequest
19
+ */
20
+ export type GetPriceRequest = Message<"silvana.pricing.v1.GetPriceRequest"> & {
21
+ /**
22
+ * e.g., "BTC-USD"
23
+ *
24
+ * @generated from field: string market_id = 1;
25
+ */
26
+ marketId: string;
27
+
28
+ /**
29
+ * Optional: specific source (binance_spot, bybit, coingecko)
30
+ *
31
+ * @generated from field: optional string source = 2;
32
+ */
33
+ source?: string;
34
+ };
35
+
36
+ /**
37
+ * Describes the message silvana.pricing.v1.GetPriceRequest.
38
+ * Use `create(GetPriceRequestSchema)` to create a new message.
39
+ */
40
+ export const GetPriceRequestSchema: GenMessage<GetPriceRequest> = /*@__PURE__*/
41
+ messageDesc(file_proto_silvana_pricing_v1_pricing, 0);
42
+
43
+ /**
44
+ * @generated from message silvana.pricing.v1.GetPriceResponse
45
+ */
46
+ export type GetPriceResponse = Message<"silvana.pricing.v1.GetPriceResponse"> & {
47
+ /**
48
+ * @generated from field: string market_id = 1;
49
+ */
50
+ marketId: string;
51
+
52
+ /**
53
+ * Not available from all sources (e.g., CoinGecko, Binance Futures)
54
+ *
55
+ * @generated from field: optional double bid = 2;
56
+ */
57
+ bid?: number;
58
+
59
+ /**
60
+ * Not available from all sources
61
+ *
62
+ * @generated from field: optional double ask = 3;
63
+ */
64
+ ask?: number;
65
+
66
+ /**
67
+ * @generated from field: double last = 4;
68
+ */
69
+ last: number;
70
+
71
+ /**
72
+ * @generated from field: optional double volume_24h = 5;
73
+ */
74
+ volume24h?: number;
75
+
76
+ /**
77
+ * @generated from field: optional double change_24h_percent = 6;
78
+ */
79
+ change24hPercent?: number;
80
+
81
+ /**
82
+ * Not available from CoinGecko simple API
83
+ *
84
+ * @generated from field: optional double high_24h = 7;
85
+ */
86
+ high24h?: number;
87
+
88
+ /**
89
+ * Not available from CoinGecko simple API
90
+ *
91
+ * @generated from field: optional double low_24h = 8;
92
+ */
93
+ low24h?: number;
94
+
95
+ /**
96
+ * Source that provided this price
97
+ *
98
+ * @generated from field: string source = 9;
99
+ */
100
+ source: string;
101
+
102
+ /**
103
+ * @generated from field: google.protobuf.Timestamp timestamp = 10;
104
+ */
105
+ timestamp?: Timestamp;
106
+ };
107
+
108
+ /**
109
+ * Describes the message silvana.pricing.v1.GetPriceResponse.
110
+ * Use `create(GetPriceResponseSchema)` to create a new message.
111
+ */
112
+ export const GetPriceResponseSchema: GenMessage<GetPriceResponse> = /*@__PURE__*/
113
+ messageDesc(file_proto_silvana_pricing_v1_pricing, 1);
114
+
115
+ /**
116
+ * @generated from message silvana.pricing.v1.GetPricesRequest
117
+ */
118
+ export type GetPricesRequest = Message<"silvana.pricing.v1.GetPricesRequest"> & {
119
+ /**
120
+ * List of market IDs
121
+ *
122
+ * @generated from field: repeated string market_ids = 1;
123
+ */
124
+ marketIds: string[];
125
+
126
+ /**
127
+ * Optional: specific source for all
128
+ *
129
+ * @generated from field: optional string source = 2;
130
+ */
131
+ source?: string;
132
+ };
133
+
134
+ /**
135
+ * Describes the message silvana.pricing.v1.GetPricesRequest.
136
+ * Use `create(GetPricesRequestSchema)` to create a new message.
137
+ */
138
+ export const GetPricesRequestSchema: GenMessage<GetPricesRequest> = /*@__PURE__*/
139
+ messageDesc(file_proto_silvana_pricing_v1_pricing, 2);
140
+
141
+ /**
142
+ * @generated from message silvana.pricing.v1.GetPricesResponse
143
+ */
144
+ export type GetPricesResponse = Message<"silvana.pricing.v1.GetPricesResponse"> & {
145
+ /**
146
+ * @generated from field: repeated silvana.pricing.v1.Price prices = 1;
147
+ */
148
+ prices: Price[];
149
+ };
150
+
151
+ /**
152
+ * Describes the message silvana.pricing.v1.GetPricesResponse.
153
+ * Use `create(GetPricesResponseSchema)` to create a new message.
154
+ */
155
+ export const GetPricesResponseSchema: GenMessage<GetPricesResponse> = /*@__PURE__*/
156
+ messageDesc(file_proto_silvana_pricing_v1_pricing, 3);
157
+
158
+ /**
159
+ * @generated from message silvana.pricing.v1.Price
160
+ */
161
+ export type Price = Message<"silvana.pricing.v1.Price"> & {
162
+ /**
163
+ * @generated from field: string market_id = 1;
164
+ */
165
+ marketId: string;
166
+
167
+ /**
168
+ * Not available from all sources (e.g., CoinGecko, Binance Futures)
169
+ *
170
+ * @generated from field: optional double bid = 2;
171
+ */
172
+ bid?: number;
173
+
174
+ /**
175
+ * Not available from all sources
176
+ *
177
+ * @generated from field: optional double ask = 3;
178
+ */
179
+ ask?: number;
180
+
181
+ /**
182
+ * @generated from field: double last = 4;
183
+ */
184
+ last: number;
185
+
186
+ /**
187
+ * @generated from field: optional double volume_24h = 5;
188
+ */
189
+ volume24h?: number;
190
+
191
+ /**
192
+ * @generated from field: optional double change_24h_percent = 6;
193
+ */
194
+ change24hPercent?: number;
195
+
196
+ /**
197
+ * Not available from CoinGecko simple API
198
+ *
199
+ * @generated from field: optional double high_24h = 7;
200
+ */
201
+ high24h?: number;
202
+
203
+ /**
204
+ * Not available from CoinGecko simple API
205
+ *
206
+ * @generated from field: optional double low_24h = 8;
207
+ */
208
+ low24h?: number;
209
+
210
+ /**
211
+ * @generated from field: string source = 9;
212
+ */
213
+ source: string;
214
+
215
+ /**
216
+ * @generated from field: google.protobuf.Timestamp timestamp = 10;
217
+ */
218
+ timestamp?: Timestamp;
219
+ };
220
+
221
+ /**
222
+ * Describes the message silvana.pricing.v1.Price.
223
+ * Use `create(PriceSchema)` to create a new message.
224
+ */
225
+ export const PriceSchema: GenMessage<Price> = /*@__PURE__*/
226
+ messageDesc(file_proto_silvana_pricing_v1_pricing, 4);
227
+
228
+ /**
229
+ * @generated from message silvana.pricing.v1.GetKlinesRequest
230
+ */
231
+ export type GetKlinesRequest = Message<"silvana.pricing.v1.GetKlinesRequest"> & {
232
+ /**
233
+ * @generated from field: string market_id = 1;
234
+ */
235
+ marketId: string;
236
+
237
+ /**
238
+ * "1m", "5m", "15m", "30m", "1h", "4h", "1d", "1w"
239
+ *
240
+ * @generated from field: string interval = 2;
241
+ */
242
+ interval: string;
243
+
244
+ /**
245
+ * Number of candles (default 100)
246
+ *
247
+ * @generated from field: optional int32 limit = 3;
248
+ */
249
+ limit?: number;
250
+
251
+ /**
252
+ * @generated from field: optional google.protobuf.Timestamp start_time = 4;
253
+ */
254
+ startTime?: Timestamp;
255
+
256
+ /**
257
+ * @generated from field: optional google.protobuf.Timestamp end_time = 5;
258
+ */
259
+ endTime?: Timestamp;
260
+
261
+ /**
262
+ * Optional: specific source
263
+ *
264
+ * @generated from field: optional string source = 6;
265
+ */
266
+ source?: string;
267
+ };
268
+
269
+ /**
270
+ * Describes the message silvana.pricing.v1.GetKlinesRequest.
271
+ * Use `create(GetKlinesRequestSchema)` to create a new message.
272
+ */
273
+ export const GetKlinesRequestSchema: GenMessage<GetKlinesRequest> = /*@__PURE__*/
274
+ messageDesc(file_proto_silvana_pricing_v1_pricing, 5);
275
+
276
+ /**
277
+ * @generated from message silvana.pricing.v1.GetKlinesResponse
278
+ */
279
+ export type GetKlinesResponse = Message<"silvana.pricing.v1.GetKlinesResponse"> & {
280
+ /**
281
+ * @generated from field: string market_id = 1;
282
+ */
283
+ marketId: string;
284
+
285
+ /**
286
+ * @generated from field: string interval = 2;
287
+ */
288
+ interval: string;
289
+
290
+ /**
291
+ * @generated from field: repeated silvana.pricing.v1.Kline klines = 3;
292
+ */
293
+ klines: Kline[];
294
+
295
+ /**
296
+ * @generated from field: string source = 4;
297
+ */
298
+ source: string;
299
+ };
300
+
301
+ /**
302
+ * Describes the message silvana.pricing.v1.GetKlinesResponse.
303
+ * Use `create(GetKlinesResponseSchema)` to create a new message.
304
+ */
305
+ export const GetKlinesResponseSchema: GenMessage<GetKlinesResponse> = /*@__PURE__*/
306
+ messageDesc(file_proto_silvana_pricing_v1_pricing, 6);
307
+
308
+ /**
309
+ * @generated from message silvana.pricing.v1.Kline
310
+ */
311
+ export type Kline = Message<"silvana.pricing.v1.Kline"> & {
312
+ /**
313
+ * @generated from field: google.protobuf.Timestamp open_time = 1;
314
+ */
315
+ openTime?: Timestamp;
316
+
317
+ /**
318
+ * @generated from field: double open = 2;
319
+ */
320
+ open: number;
321
+
322
+ /**
323
+ * @generated from field: double high = 3;
324
+ */
325
+ high: number;
326
+
327
+ /**
328
+ * @generated from field: double low = 4;
329
+ */
330
+ low: number;
331
+
332
+ /**
333
+ * @generated from field: double close = 5;
334
+ */
335
+ close: number;
336
+
337
+ /**
338
+ * @generated from field: double volume = 6;
339
+ */
340
+ volume: number;
341
+
342
+ /**
343
+ * @generated from field: google.protobuf.Timestamp close_time = 7;
344
+ */
345
+ closeTime?: Timestamp;
346
+
347
+ /**
348
+ * Volume in quote currency
349
+ *
350
+ * @generated from field: double quote_volume = 8;
351
+ */
352
+ quoteVolume: number;
353
+
354
+ /**
355
+ * Number of trades
356
+ *
357
+ * @generated from field: int32 trades = 9;
358
+ */
359
+ trades: number;
360
+ };
361
+
362
+ /**
363
+ * Describes the message silvana.pricing.v1.Kline.
364
+ * Use `create(KlineSchema)` to create a new message.
365
+ */
366
+ export const KlineSchema: GenMessage<Kline> = /*@__PURE__*/
367
+ messageDesc(file_proto_silvana_pricing_v1_pricing, 7);
368
+
369
+ /**
370
+ * @generated from message silvana.pricing.v1.GetOrderBookRequest
371
+ */
372
+ export type GetOrderBookRequest = Message<"silvana.pricing.v1.GetOrderBookRequest"> & {
373
+ /**
374
+ * @generated from field: string market_id = 1;
375
+ */
376
+ marketId: string;
377
+
378
+ /**
379
+ * Number of levels (default 20)
380
+ *
381
+ * @generated from field: optional int32 depth = 2;
382
+ */
383
+ depth?: number;
384
+
385
+ /**
386
+ * Optional: specific source
387
+ *
388
+ * @generated from field: optional string source = 3;
389
+ */
390
+ source?: string;
391
+ };
392
+
393
+ /**
394
+ * Describes the message silvana.pricing.v1.GetOrderBookRequest.
395
+ * Use `create(GetOrderBookRequestSchema)` to create a new message.
396
+ */
397
+ export const GetOrderBookRequestSchema: GenMessage<GetOrderBookRequest> = /*@__PURE__*/
398
+ messageDesc(file_proto_silvana_pricing_v1_pricing, 8);
399
+
400
+ /**
401
+ * @generated from message silvana.pricing.v1.GetOrderBookResponse
402
+ */
403
+ export type GetOrderBookResponse = Message<"silvana.pricing.v1.GetOrderBookResponse"> & {
404
+ /**
405
+ * @generated from field: string market_id = 1;
406
+ */
407
+ marketId: string;
408
+
409
+ /**
410
+ * @generated from field: repeated silvana.pricing.v1.OrderBookLevel bids = 2;
411
+ */
412
+ bids: OrderBookLevel[];
413
+
414
+ /**
415
+ * @generated from field: repeated silvana.pricing.v1.OrderBookLevel asks = 3;
416
+ */
417
+ asks: OrderBookLevel[];
418
+
419
+ /**
420
+ * @generated from field: google.protobuf.Timestamp timestamp = 4;
421
+ */
422
+ timestamp?: Timestamp;
423
+
424
+ /**
425
+ * @generated from field: string source = 5;
426
+ */
427
+ source: string;
428
+ };
429
+
430
+ /**
431
+ * Describes the message silvana.pricing.v1.GetOrderBookResponse.
432
+ * Use `create(GetOrderBookResponseSchema)` to create a new message.
433
+ */
434
+ export const GetOrderBookResponseSchema: GenMessage<GetOrderBookResponse> = /*@__PURE__*/
435
+ messageDesc(file_proto_silvana_pricing_v1_pricing, 9);
436
+
437
+ /**
438
+ * @generated from message silvana.pricing.v1.OrderBookLevel
439
+ */
440
+ export type OrderBookLevel = Message<"silvana.pricing.v1.OrderBookLevel"> & {
441
+ /**
442
+ * @generated from field: double price = 1;
443
+ */
444
+ price: number;
445
+
446
+ /**
447
+ * @generated from field: double quantity = 2;
448
+ */
449
+ quantity: number;
450
+ };
451
+
452
+ /**
453
+ * Describes the message silvana.pricing.v1.OrderBookLevel.
454
+ * Use `create(OrderBookLevelSchema)` to create a new message.
455
+ */
456
+ export const OrderBookLevelSchema: GenMessage<OrderBookLevel> = /*@__PURE__*/
457
+ messageDesc(file_proto_silvana_pricing_v1_pricing, 10);
458
+
459
+ /**
460
+ * @generated from message silvana.pricing.v1.StreamPricesRequest
461
+ */
462
+ export type StreamPricesRequest = Message<"silvana.pricing.v1.StreamPricesRequest"> & {
463
+ /**
464
+ * Markets to subscribe to
465
+ *
466
+ * @generated from field: repeated string market_ids = 1;
467
+ */
468
+ marketIds: string[];
469
+
470
+ /**
471
+ * Include order book updates
472
+ *
473
+ * @generated from field: optional bool include_orderbook = 2;
474
+ */
475
+ includeOrderbook?: boolean;
476
+
477
+ /**
478
+ * Include trade updates
479
+ *
480
+ * @generated from field: optional bool include_trades = 3;
481
+ */
482
+ includeTrades?: boolean;
483
+ };
484
+
485
+ /**
486
+ * Describes the message silvana.pricing.v1.StreamPricesRequest.
487
+ * Use `create(StreamPricesRequestSchema)` to create a new message.
488
+ */
489
+ export const StreamPricesRequestSchema: GenMessage<StreamPricesRequest> = /*@__PURE__*/
490
+ messageDesc(file_proto_silvana_pricing_v1_pricing, 11);
491
+
492
+ /**
493
+ * @generated from message silvana.pricing.v1.PriceUpdate
494
+ */
495
+ export type PriceUpdate = Message<"silvana.pricing.v1.PriceUpdate"> & {
496
+ /**
497
+ * @generated from field: string market_id = 1;
498
+ */
499
+ marketId: string;
500
+
501
+ /**
502
+ * @generated from field: double price = 2;
503
+ */
504
+ price: number;
505
+
506
+ /**
507
+ * @generated from field: optional double bid = 3;
508
+ */
509
+ bid?: number;
510
+
511
+ /**
512
+ * @generated from field: optional double ask = 4;
513
+ */
514
+ ask?: number;
515
+
516
+ /**
517
+ * @generated from field: optional double volume = 5;
518
+ */
519
+ volume?: number;
520
+
521
+ /**
522
+ * @generated from field: string source = 6;
523
+ */
524
+ source: string;
525
+
526
+ /**
527
+ * @generated from field: google.protobuf.Timestamp timestamp = 7;
528
+ */
529
+ timestamp?: Timestamp;
530
+
531
+ /**
532
+ * Optional: order book update
533
+ *
534
+ * @generated from field: optional silvana.pricing.v1.OrderBookUpdate orderbook = 8;
535
+ */
536
+ orderbook?: OrderBookUpdate;
537
+
538
+ /**
539
+ * Optional: trade update
540
+ *
541
+ * @generated from field: optional silvana.pricing.v1.TradeUpdate trade = 9;
542
+ */
543
+ trade?: TradeUpdate;
544
+ };
545
+
546
+ /**
547
+ * Describes the message silvana.pricing.v1.PriceUpdate.
548
+ * Use `create(PriceUpdateSchema)` to create a new message.
549
+ */
550
+ export const PriceUpdateSchema: GenMessage<PriceUpdate> = /*@__PURE__*/
551
+ messageDesc(file_proto_silvana_pricing_v1_pricing, 12);
552
+
553
+ /**
554
+ * @generated from message silvana.pricing.v1.OrderBookUpdate
555
+ */
556
+ export type OrderBookUpdate = Message<"silvana.pricing.v1.OrderBookUpdate"> & {
557
+ /**
558
+ * @generated from field: repeated silvana.pricing.v1.OrderBookLevel bids = 1;
559
+ */
560
+ bids: OrderBookLevel[];
561
+
562
+ /**
563
+ * @generated from field: repeated silvana.pricing.v1.OrderBookLevel asks = 2;
564
+ */
565
+ asks: OrderBookLevel[];
566
+ };
567
+
568
+ /**
569
+ * Describes the message silvana.pricing.v1.OrderBookUpdate.
570
+ * Use `create(OrderBookUpdateSchema)` to create a new message.
571
+ */
572
+ export const OrderBookUpdateSchema: GenMessage<OrderBookUpdate> = /*@__PURE__*/
573
+ messageDesc(file_proto_silvana_pricing_v1_pricing, 13);
574
+
575
+ /**
576
+ * @generated from message silvana.pricing.v1.TradeUpdate
577
+ */
578
+ export type TradeUpdate = Message<"silvana.pricing.v1.TradeUpdate"> & {
579
+ /**
580
+ * @generated from field: double price = 1;
581
+ */
582
+ price: number;
583
+
584
+ /**
585
+ * @generated from field: double quantity = 2;
586
+ */
587
+ quantity: number;
588
+
589
+ /**
590
+ * true if buyer was the maker
591
+ *
592
+ * @generated from field: bool is_buyer_maker = 3;
593
+ */
594
+ isBuyerMaker: boolean;
595
+
596
+ /**
597
+ * @generated from field: google.protobuf.Timestamp timestamp = 4;
598
+ */
599
+ timestamp?: Timestamp;
600
+ };
601
+
602
+ /**
603
+ * Describes the message silvana.pricing.v1.TradeUpdate.
604
+ * Use `create(TradeUpdateSchema)` to create a new message.
605
+ */
606
+ export const TradeUpdateSchema: GenMessage<TradeUpdate> = /*@__PURE__*/
607
+ messageDesc(file_proto_silvana_pricing_v1_pricing, 14);
608
+
609
+ /**
610
+ * @generated from message silvana.pricing.v1.GetPivotPointsRequest
611
+ */
612
+ export type GetPivotPointsRequest = Message<"silvana.pricing.v1.GetPivotPointsRequest"> & {
613
+ /**
614
+ * @generated from field: string market_id = 1;
615
+ */
616
+ marketId: string;
617
+
618
+ /**
619
+ * "daily", "weekly", "monthly"
620
+ *
621
+ * @generated from field: string timeframe = 2;
622
+ */
623
+ timeframe: string;
624
+
625
+ /**
626
+ * Optional: specific source
627
+ *
628
+ * @generated from field: optional string source = 3;
629
+ */
630
+ source?: string;
631
+ };
632
+
633
+ /**
634
+ * Describes the message silvana.pricing.v1.GetPivotPointsRequest.
635
+ * Use `create(GetPivotPointsRequestSchema)` to create a new message.
636
+ */
637
+ export const GetPivotPointsRequestSchema: GenMessage<GetPivotPointsRequest> = /*@__PURE__*/
638
+ messageDesc(file_proto_silvana_pricing_v1_pricing, 15);
639
+
640
+ /**
641
+ * @generated from message silvana.pricing.v1.GetPivotPointsResponse
642
+ */
643
+ export type GetPivotPointsResponse = Message<"silvana.pricing.v1.GetPivotPointsResponse"> & {
644
+ /**
645
+ * @generated from field: string market_id = 1;
646
+ */
647
+ marketId: string;
648
+
649
+ /**
650
+ * Classic pivot points
651
+ *
652
+ * @generated from field: silvana.pricing.v1.PivotPoints classic = 2;
653
+ */
654
+ classic?: PivotPoints;
655
+
656
+ /**
657
+ * Fibonacci pivot points
658
+ *
659
+ * @generated from field: optional silvana.pricing.v1.PivotPoints fibonacci = 3;
660
+ */
661
+ fibonacci?: PivotPoints;
662
+
663
+ /**
664
+ * Camarilla pivot points
665
+ *
666
+ * @generated from field: optional silvana.pricing.v1.PivotPoints camarilla = 4;
667
+ */
668
+ camarilla?: PivotPoints;
669
+
670
+ /**
671
+ * Woodie pivot points
672
+ *
673
+ * @generated from field: optional silvana.pricing.v1.PivotPoints woodie = 5;
674
+ */
675
+ woodie?: PivotPoints;
676
+
677
+ /**
678
+ * DeMark pivot points
679
+ *
680
+ * @generated from field: optional silvana.pricing.v1.PivotPoints demark = 6;
681
+ */
682
+ demark?: PivotPoints;
683
+
684
+ /**
685
+ * @generated from field: google.protobuf.Timestamp calculated_at = 7;
686
+ */
687
+ calculatedAt?: Timestamp;
688
+ };
689
+
690
+ /**
691
+ * Describes the message silvana.pricing.v1.GetPivotPointsResponse.
692
+ * Use `create(GetPivotPointsResponseSchema)` to create a new message.
693
+ */
694
+ export const GetPivotPointsResponseSchema: GenMessage<GetPivotPointsResponse> = /*@__PURE__*/
695
+ messageDesc(file_proto_silvana_pricing_v1_pricing, 16);
696
+
697
+ /**
698
+ * @generated from message silvana.pricing.v1.PivotPoints
699
+ */
700
+ export type PivotPoints = Message<"silvana.pricing.v1.PivotPoints"> & {
701
+ /**
702
+ * Pivot point
703
+ *
704
+ * @generated from field: double pivot = 1;
705
+ */
706
+ pivot: number;
707
+
708
+ /**
709
+ * Resistance 1
710
+ *
711
+ * @generated from field: double r1 = 2;
712
+ */
713
+ r1: number;
714
+
715
+ /**
716
+ * Resistance 2
717
+ *
718
+ * @generated from field: double r2 = 3;
719
+ */
720
+ r2: number;
721
+
722
+ /**
723
+ * Resistance 3
724
+ *
725
+ * @generated from field: double r3 = 4;
726
+ */
727
+ r3: number;
728
+
729
+ /**
730
+ * Support 1
731
+ *
732
+ * @generated from field: double s1 = 5;
733
+ */
734
+ s1: number;
735
+
736
+ /**
737
+ * Support 2
738
+ *
739
+ * @generated from field: double s2 = 6;
740
+ */
741
+ s2: number;
742
+
743
+ /**
744
+ * Support 3
745
+ *
746
+ * @generated from field: double s3 = 7;
747
+ */
748
+ s3: number;
749
+
750
+ /**
751
+ * Resistance 4 (Camarilla)
752
+ *
753
+ * @generated from field: optional double r4 = 8;
754
+ */
755
+ r4?: number;
756
+
757
+ /**
758
+ * Support 4 (Camarilla)
759
+ *
760
+ * @generated from field: optional double s4 = 9;
761
+ */
762
+ s4?: number;
763
+ };
764
+
765
+ /**
766
+ * Describes the message silvana.pricing.v1.PivotPoints.
767
+ * Use `create(PivotPointsSchema)` to create a new message.
768
+ */
769
+ export const PivotPointsSchema: GenMessage<PivotPoints> = /*@__PURE__*/
770
+ messageDesc(file_proto_silvana_pricing_v1_pricing, 17);
771
+
772
+ /**
773
+ * @generated from message silvana.pricing.v1.PriceFeedConfig
774
+ */
775
+ export type PriceFeedConfig = Message<"silvana.pricing.v1.PriceFeedConfig"> & {
776
+ /**
777
+ * @generated from field: repeated silvana.pricing.v1.PriceFeedConfig.DirectFeed direct = 1;
778
+ */
779
+ direct: PriceFeedConfig_DirectFeed[];
780
+
781
+ /**
782
+ * @generated from field: optional silvana.pricing.v1.PriceFeedConfig.SyntheticFeed synthetic = 2;
783
+ */
784
+ synthetic?: PriceFeedConfig_SyntheticFeed;
785
+ };
786
+
787
+ /**
788
+ * Describes the message silvana.pricing.v1.PriceFeedConfig.
789
+ * Use `create(PriceFeedConfigSchema)` to create a new message.
790
+ */
791
+ export const PriceFeedConfigSchema: GenMessage<PriceFeedConfig> = /*@__PURE__*/
792
+ messageDesc(file_proto_silvana_pricing_v1_pricing, 18);
793
+
794
+ /**
795
+ * @generated from message silvana.pricing.v1.PriceFeedConfig.DirectFeed
796
+ */
797
+ export type PriceFeedConfig_DirectFeed = Message<"silvana.pricing.v1.PriceFeedConfig.DirectFeed"> & {
798
+ /**
799
+ * "binance_spot", "binance_futures", "bybit", "coingecko"
800
+ *
801
+ * @generated from field: string source = 1;
802
+ */
803
+ source: string;
804
+
805
+ /**
806
+ * Exchange-specific symbol (e.g., "BTCUSDT")
807
+ *
808
+ * @generated from field: string symbol = 2;
809
+ */
810
+ symbol: string;
811
+
812
+ /**
813
+ * @generated from field: bool enabled = 3;
814
+ */
815
+ enabled: boolean;
816
+
817
+ /**
818
+ * Lower number = higher priority
819
+ *
820
+ * @generated from field: int32 priority = 4;
821
+ */
822
+ priority: number;
823
+
824
+ /**
825
+ * Exchange-specific config
826
+ *
827
+ * @generated from field: optional google.protobuf.Struct metadata = 5;
828
+ */
829
+ metadata?: JsonObject;
830
+ };
831
+
832
+ /**
833
+ * Describes the message silvana.pricing.v1.PriceFeedConfig.DirectFeed.
834
+ * Use `create(PriceFeedConfig_DirectFeedSchema)` to create a new message.
835
+ */
836
+ export const PriceFeedConfig_DirectFeedSchema: GenMessage<PriceFeedConfig_DirectFeed> = /*@__PURE__*/
837
+ messageDesc(file_proto_silvana_pricing_v1_pricing, 18, 0);
838
+
839
+ /**
840
+ * @generated from message silvana.pricing.v1.PriceFeedConfig.SyntheticFeed
841
+ */
842
+ export type PriceFeedConfig_SyntheticFeed = Message<"silvana.pricing.v1.PriceFeedConfig.SyntheticFeed"> & {
843
+ /**
844
+ * "cross_rate", "index", "weighted_average"
845
+ *
846
+ * @generated from field: string type = 1;
847
+ */
848
+ type: string;
849
+
850
+ /**
851
+ * e.g., "BTC-USD"
852
+ *
853
+ * @generated from field: string base_market = 2;
854
+ */
855
+ baseMarket: string;
856
+
857
+ /**
858
+ * e.g., "CC-USD"
859
+ *
860
+ * @generated from field: string quote_market = 3;
861
+ */
862
+ quoteMarket: string;
863
+
864
+ /**
865
+ * "divide", "multiply"
866
+ *
867
+ * @generated from field: string operation = 4;
868
+ */
869
+ operation: string;
870
+
871
+ /**
872
+ * @generated from field: optional google.protobuf.Struct metadata = 5;
873
+ */
874
+ metadata?: JsonObject;
875
+ };
876
+
877
+ /**
878
+ * Describes the message silvana.pricing.v1.PriceFeedConfig.SyntheticFeed.
879
+ * Use `create(PriceFeedConfig_SyntheticFeedSchema)` to create a new message.
880
+ */
881
+ export const PriceFeedConfig_SyntheticFeedSchema: GenMessage<PriceFeedConfig_SyntheticFeed> = /*@__PURE__*/
882
+ messageDesc(file_proto_silvana_pricing_v1_pricing, 18, 1);
883
+
884
+ /**
885
+ * @generated from service silvana.pricing.v1.PricingService
886
+ */
887
+ export const PricingService: GenService<{
888
+ /**
889
+ * Get current price for a market
890
+ *
891
+ * @generated from rpc silvana.pricing.v1.PricingService.GetPrice
892
+ */
893
+ getPrice: {
894
+ methodKind: "unary";
895
+ input: typeof GetPriceRequestSchema;
896
+ output: typeof GetPriceResponseSchema;
897
+ },
898
+ /**
899
+ * Get multiple market prices
900
+ *
901
+ * @generated from rpc silvana.pricing.v1.PricingService.GetPrices
902
+ */
903
+ getPrices: {
904
+ methodKind: "unary";
905
+ input: typeof GetPricesRequestSchema;
906
+ output: typeof GetPricesResponseSchema;
907
+ },
908
+ /**
909
+ * Get kline/candle data
910
+ *
911
+ * @generated from rpc silvana.pricing.v1.PricingService.GetKlines
912
+ */
913
+ getKlines: {
914
+ methodKind: "unary";
915
+ input: typeof GetKlinesRequestSchema;
916
+ output: typeof GetKlinesResponseSchema;
917
+ },
918
+ /**
919
+ * Get order book snapshot
920
+ *
921
+ * @generated from rpc silvana.pricing.v1.PricingService.GetOrderBook
922
+ */
923
+ getOrderBook: {
924
+ methodKind: "unary";
925
+ input: typeof GetOrderBookRequestSchema;
926
+ output: typeof GetOrderBookResponseSchema;
927
+ },
928
+ /**
929
+ * Stream real-time price updates
930
+ *
931
+ * @generated from rpc silvana.pricing.v1.PricingService.StreamPrices
932
+ */
933
+ streamPrices: {
934
+ methodKind: "server_streaming";
935
+ input: typeof StreamPricesRequestSchema;
936
+ output: typeof PriceUpdateSchema;
937
+ },
938
+ /**
939
+ * Get calculated pivot points
940
+ *
941
+ * @generated from rpc silvana.pricing.v1.PricingService.GetPivotPoints
942
+ */
943
+ getPivotPoints: {
944
+ methodKind: "unary";
945
+ input: typeof GetPivotPointsRequestSchema;
946
+ output: typeof GetPivotPointsResponseSchema;
947
+ },
948
+ }> = /*@__PURE__*/
949
+ serviceDesc(file_proto_silvana_pricing_v1_pricing, 0);
950
+