@silvana-one/orderbook 1.1.31 → 1.1.32
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.
- package/README.md +150 -54
- package/dist/node/index.cjs +630 -41
- package/dist/node/index.d.ts +1 -0
- package/dist/node/index.js +1 -0
- package/dist/node/index.js.map +1 -1
- package/dist/node/ledger.d.ts +95 -0
- package/dist/node/ledger.js +170 -0
- package/dist/node/ledger.js.map +1 -0
- package/dist/node/orderbook.d.ts +58 -2
- package/dist/node/orderbook.js +74 -2
- package/dist/node/orderbook.js.map +1 -1
- package/dist/node/proto/silvana/ledger/v1/ledger_pb.d.ts +2171 -0
- package/dist/node/proto/silvana/ledger/v1/ledger_pb.js +559 -0
- package/dist/node/proto/silvana/ledger/v1/ledger_pb.js.map +1 -0
- package/dist/node/proto/silvana/orderbook/v1/orderbook_pb.d.ts +513 -3
- package/dist/node/proto/silvana/orderbook/v1/orderbook_pb.js +95 -1
- package/dist/node/proto/silvana/orderbook/v1/orderbook_pb.js.map +1 -1
- package/dist/node/proto/silvana/settlement/v1/settlement_pb.d.ts +307 -3
- package/dist/node/proto/silvana/settlement/v1/settlement_pb.js +131 -44
- package/dist/node/proto/silvana/settlement/v1/settlement_pb.js.map +1 -1
- package/dist/node/settlement.d.ts +1 -1
- package/dist/node/settlement.js +1 -1
- package/dist/node/settlement.js.map +1 -1
- package/dist/tsconfig.tsbuildinfo +1 -1
- package/dist/tsconfig.web.tsbuildinfo +1 -1
- package/dist/web/index.d.ts +1 -0
- package/dist/web/index.js +1 -0
- package/dist/web/index.js.map +1 -1
- package/dist/web/ledger.d.ts +95 -0
- package/dist/web/ledger.js +170 -0
- package/dist/web/ledger.js.map +1 -0
- package/dist/web/orderbook.d.ts +58 -2
- package/dist/web/orderbook.js +74 -2
- package/dist/web/orderbook.js.map +1 -1
- package/dist/web/proto/silvana/ledger/v1/ledger_pb.d.ts +2171 -0
- package/dist/web/proto/silvana/ledger/v1/ledger_pb.js +559 -0
- package/dist/web/proto/silvana/ledger/v1/ledger_pb.js.map +1 -0
- package/dist/web/proto/silvana/orderbook/v1/orderbook_pb.d.ts +513 -3
- package/dist/web/proto/silvana/orderbook/v1/orderbook_pb.js +95 -1
- package/dist/web/proto/silvana/orderbook/v1/orderbook_pb.js.map +1 -1
- package/dist/web/proto/silvana/settlement/v1/settlement_pb.d.ts +307 -3
- package/dist/web/proto/silvana/settlement/v1/settlement_pb.js +131 -44
- package/dist/web/proto/silvana/settlement/v1/settlement_pb.js.map +1 -1
- package/dist/web/settlement.d.ts +1 -1
- package/dist/web/settlement.js +1 -1
- package/dist/web/settlement.js.map +1 -1
- package/package.json +7 -6
- package/src/index.ts +1 -0
- package/src/ledger.ts +267 -0
- package/src/orderbook.ts +123 -1
- package/src/proto/silvana/ledger/v1/ledger_pb.ts +2531 -0
- package/src/proto/silvana/orderbook/v1/orderbook_pb.ts +611 -4
- package/src/proto/silvana/settlement/v1/settlement_pb.ts +402 -46
- package/src/settlement.ts +12 -0
|
@@ -537,6 +537,12 @@ export type SettlementHandshake = Message<"silvana.settlement.v1.SettlementHands
|
|
|
537
537
|
* @generated from field: optional google.protobuf.Struct capabilities = 5;
|
|
538
538
|
*/
|
|
539
539
|
capabilities?: JsonObject;
|
|
540
|
+
/**
|
|
541
|
+
* If set, this agent is a liquidity provider
|
|
542
|
+
*
|
|
543
|
+
* @generated from field: optional string liquidity_provider_name = 6;
|
|
544
|
+
*/
|
|
545
|
+
liquidityProviderName?: string;
|
|
540
546
|
};
|
|
541
547
|
/**
|
|
542
548
|
* Describes the message silvana.settlement.v1.SettlementHandshake.
|
|
@@ -659,6 +665,198 @@ export type LiquidityProviderPong = Message<"silvana.settlement.v1.LiquidityProv
|
|
|
659
665
|
* Use `create(LiquidityProviderPongSchema)` to create a new message.
|
|
660
666
|
*/
|
|
661
667
|
export declare const LiquidityProviderPongSchema: GenMessage<LiquidityProviderPong>;
|
|
668
|
+
/**
|
|
669
|
+
* RFQ request from server to LP agent (via stream) — anonymous: no requesting party
|
|
670
|
+
*
|
|
671
|
+
* @generated from message silvana.settlement.v1.RfqRequest
|
|
672
|
+
*/
|
|
673
|
+
export type RfqRequest = Message<"silvana.settlement.v1.RfqRequest"> & {
|
|
674
|
+
/**
|
|
675
|
+
* UUIDv7 — unique per RFQ session
|
|
676
|
+
*
|
|
677
|
+
* @generated from field: string rfq_id = 1;
|
|
678
|
+
*/
|
|
679
|
+
rfqId: string;
|
|
680
|
+
/**
|
|
681
|
+
* @generated from field: string market_id = 2;
|
|
682
|
+
*/
|
|
683
|
+
marketId: string;
|
|
684
|
+
/**
|
|
685
|
+
* What the USER wants to do (buy/sell)
|
|
686
|
+
*
|
|
687
|
+
* @generated from field: silvana.settlement.v1.RfqDirection direction = 3;
|
|
688
|
+
*/
|
|
689
|
+
direction: RfqDirection;
|
|
690
|
+
/**
|
|
691
|
+
* DECIMAL(38,10) as string — base instrument quantity
|
|
692
|
+
*
|
|
693
|
+
* @generated from field: string quantity = 4;
|
|
694
|
+
*/
|
|
695
|
+
quantity: string;
|
|
696
|
+
/**
|
|
697
|
+
* Server-enforced deadline for LP response
|
|
698
|
+
*
|
|
699
|
+
* @generated from field: google.protobuf.Timestamp respond_by = 5;
|
|
700
|
+
*/
|
|
701
|
+
respondBy?: Timestamp;
|
|
702
|
+
/**
|
|
703
|
+
* @generated from field: google.protobuf.Timestamp created_at = 6;
|
|
704
|
+
*/
|
|
705
|
+
createdAt?: Timestamp;
|
|
706
|
+
};
|
|
707
|
+
/**
|
|
708
|
+
* Describes the message silvana.settlement.v1.RfqRequest.
|
|
709
|
+
* Use `create(RfqRequestSchema)` to create a new message.
|
|
710
|
+
*/
|
|
711
|
+
export declare const RfqRequestSchema: GenMessage<RfqRequest>;
|
|
712
|
+
/**
|
|
713
|
+
* RFQ quote response from LP agent to server (via stream)
|
|
714
|
+
*
|
|
715
|
+
* @generated from message silvana.settlement.v1.RfqQuote
|
|
716
|
+
*/
|
|
717
|
+
export type RfqQuote = Message<"silvana.settlement.v1.RfqQuote"> & {
|
|
718
|
+
/**
|
|
719
|
+
* Must match RfqRequest.rfq_id
|
|
720
|
+
*
|
|
721
|
+
* @generated from field: string rfq_id = 1;
|
|
722
|
+
*/
|
|
723
|
+
rfqId: string;
|
|
724
|
+
/**
|
|
725
|
+
* UUIDv7 — unique per quote
|
|
726
|
+
*
|
|
727
|
+
* @generated from field: string quote_id = 2;
|
|
728
|
+
*/
|
|
729
|
+
quoteId: string;
|
|
730
|
+
/**
|
|
731
|
+
* @generated from field: string market_id = 3;
|
|
732
|
+
*/
|
|
733
|
+
marketId: string;
|
|
734
|
+
/**
|
|
735
|
+
* Echoes the request direction
|
|
736
|
+
*
|
|
737
|
+
* @generated from field: silvana.settlement.v1.RfqDirection direction = 4;
|
|
738
|
+
*/
|
|
739
|
+
direction: RfqDirection;
|
|
740
|
+
/**
|
|
741
|
+
* DECIMAL(38,10) as string — base quantity being quoted
|
|
742
|
+
*
|
|
743
|
+
* @generated from field: string quantity = 5;
|
|
744
|
+
*/
|
|
745
|
+
quantity: string;
|
|
746
|
+
/**
|
|
747
|
+
* DECIMAL(38,10) as string — price per unit of base
|
|
748
|
+
*
|
|
749
|
+
* @generated from field: string price = 6;
|
|
750
|
+
*/
|
|
751
|
+
price: string;
|
|
752
|
+
/**
|
|
753
|
+
* DECIMAL(38,10) as string — total quote instrument amount (price × quantity)
|
|
754
|
+
*
|
|
755
|
+
* @generated from field: string quote_quantity = 7;
|
|
756
|
+
*/
|
|
757
|
+
quoteQuantity: string;
|
|
758
|
+
/**
|
|
759
|
+
* How many seconds this quote is valid
|
|
760
|
+
*
|
|
761
|
+
* @generated from field: uint32 valid_for_secs = 8;
|
|
762
|
+
*/
|
|
763
|
+
validForSecs: number;
|
|
764
|
+
/**
|
|
765
|
+
* Absolute expiry
|
|
766
|
+
*
|
|
767
|
+
* @generated from field: google.protobuf.Timestamp valid_until = 9;
|
|
768
|
+
*/
|
|
769
|
+
validUntil?: Timestamp;
|
|
770
|
+
/**
|
|
771
|
+
* LP's Canton party ID (the counterparty for DVP)
|
|
772
|
+
*
|
|
773
|
+
* @generated from field: string lp_party_id = 10;
|
|
774
|
+
*/
|
|
775
|
+
lpPartyId: string;
|
|
776
|
+
/**
|
|
777
|
+
* LP display name
|
|
778
|
+
*
|
|
779
|
+
* @generated from field: string lp_name = 11;
|
|
780
|
+
*/
|
|
781
|
+
lpName: string;
|
|
782
|
+
/**
|
|
783
|
+
* @generated from field: google.protobuf.Timestamp quoted_at = 12;
|
|
784
|
+
*/
|
|
785
|
+
quotedAt?: Timestamp;
|
|
786
|
+
/**
|
|
787
|
+
* Seconds from DVP creation for allocation deadline
|
|
788
|
+
*
|
|
789
|
+
* @generated from field: optional uint32 allocate_before_secs = 13;
|
|
790
|
+
*/
|
|
791
|
+
allocateBeforeSecs?: number;
|
|
792
|
+
/**
|
|
793
|
+
* Seconds from DVP creation for settlement deadline
|
|
794
|
+
*
|
|
795
|
+
* @generated from field: optional uint32 settle_before_secs = 14;
|
|
796
|
+
*/
|
|
797
|
+
settleBeforeSecs?: number;
|
|
798
|
+
};
|
|
799
|
+
/**
|
|
800
|
+
* Describes the message silvana.settlement.v1.RfqQuote.
|
|
801
|
+
* Use `create(RfqQuoteSchema)` to create a new message.
|
|
802
|
+
*/
|
|
803
|
+
export declare const RfqQuoteSchema: GenMessage<RfqQuote>;
|
|
804
|
+
/**
|
|
805
|
+
* RFQ rejection from LP agent to server (via stream)
|
|
806
|
+
*
|
|
807
|
+
* @generated from message silvana.settlement.v1.RfqReject
|
|
808
|
+
*/
|
|
809
|
+
export type RfqReject = Message<"silvana.settlement.v1.RfqReject"> & {
|
|
810
|
+
/**
|
|
811
|
+
* Must match RfqRequest.rfq_id
|
|
812
|
+
*
|
|
813
|
+
* @generated from field: string rfq_id = 1;
|
|
814
|
+
*/
|
|
815
|
+
rfqId: string;
|
|
816
|
+
/**
|
|
817
|
+
* LP's Canton party ID
|
|
818
|
+
*
|
|
819
|
+
* @generated from field: string lp_party_id = 2;
|
|
820
|
+
*/
|
|
821
|
+
lpPartyId: string;
|
|
822
|
+
/**
|
|
823
|
+
* LP display name
|
|
824
|
+
*
|
|
825
|
+
* @generated from field: string lp_name = 3;
|
|
826
|
+
*/
|
|
827
|
+
lpName: string;
|
|
828
|
+
/**
|
|
829
|
+
* @generated from field: silvana.settlement.v1.RfqRejectionReason reason = 4;
|
|
830
|
+
*/
|
|
831
|
+
reason: RfqRejectionReason;
|
|
832
|
+
/**
|
|
833
|
+
* Human-readable detail
|
|
834
|
+
*
|
|
835
|
+
* @generated from field: optional string reason_detail = 5;
|
|
836
|
+
*/
|
|
837
|
+
reasonDetail?: string;
|
|
838
|
+
/**
|
|
839
|
+
* @generated from field: google.protobuf.Timestamp rejected_at = 6;
|
|
840
|
+
*/
|
|
841
|
+
rejectedAt?: Timestamp;
|
|
842
|
+
/**
|
|
843
|
+
* LP's min acceptable quantity (set on AmountTooSmall/AmountTooLarge)
|
|
844
|
+
*
|
|
845
|
+
* @generated from field: optional string min_quantity = 7;
|
|
846
|
+
*/
|
|
847
|
+
minQuantity?: string;
|
|
848
|
+
/**
|
|
849
|
+
* LP's max acceptable quantity (set on AmountTooSmall/AmountTooLarge)
|
|
850
|
+
*
|
|
851
|
+
* @generated from field: optional string max_quantity = 8;
|
|
852
|
+
*/
|
|
853
|
+
maxQuantity?: string;
|
|
854
|
+
};
|
|
855
|
+
/**
|
|
856
|
+
* Describes the message silvana.settlement.v1.RfqReject.
|
|
857
|
+
* Use `create(RfqRejectSchema)` to create a new message.
|
|
858
|
+
*/
|
|
859
|
+
export declare const RfqRejectSchema: GenMessage<RfqReject>;
|
|
662
860
|
/**
|
|
663
861
|
* Stream message from server to Canton node
|
|
664
862
|
*
|
|
@@ -738,12 +936,20 @@ export type ServerToCantonMessage = Message<"silvana.settlement.v1.ServerToCanto
|
|
|
738
936
|
case: "query";
|
|
739
937
|
} | {
|
|
740
938
|
/**
|
|
741
|
-
* Pong acknowledgment for LP activity ping
|
|
939
|
+
* Pong acknowledgment for LP activity ping (deprecated)
|
|
742
940
|
*
|
|
743
941
|
* @generated from field: silvana.settlement.v1.LiquidityProviderPong lp_pong = 14;
|
|
744
942
|
*/
|
|
745
943
|
value: LiquidityProviderPong;
|
|
746
944
|
case: "lpPong";
|
|
945
|
+
} | {
|
|
946
|
+
/**
|
|
947
|
+
* RFQ request to LP agent
|
|
948
|
+
*
|
|
949
|
+
* @generated from field: silvana.settlement.v1.RfqRequest rfq_request = 15;
|
|
950
|
+
*/
|
|
951
|
+
value: RfqRequest;
|
|
952
|
+
case: "rfqRequest";
|
|
747
953
|
} | {
|
|
748
954
|
case: undefined;
|
|
749
955
|
value?: undefined;
|
|
@@ -837,12 +1043,28 @@ export type CantonToServerMessage = Message<"silvana.settlement.v1.CantonToServe
|
|
|
837
1043
|
case: "status";
|
|
838
1044
|
} | {
|
|
839
1045
|
/**
|
|
840
|
-
* Ping from settlement agent
|
|
1046
|
+
* Ping from settlement agent (deprecated)
|
|
841
1047
|
*
|
|
842
1048
|
* @generated from field: silvana.settlement.v1.LiquidityProviderPing lp_ping = 14;
|
|
843
1049
|
*/
|
|
844
1050
|
value: LiquidityProviderPing;
|
|
845
1051
|
case: "lpPing";
|
|
1052
|
+
} | {
|
|
1053
|
+
/**
|
|
1054
|
+
* LP quote response
|
|
1055
|
+
*
|
|
1056
|
+
* @generated from field: silvana.settlement.v1.RfqQuote rfq_quote = 15;
|
|
1057
|
+
*/
|
|
1058
|
+
value: RfqQuote;
|
|
1059
|
+
case: "rfqQuote";
|
|
1060
|
+
} | {
|
|
1061
|
+
/**
|
|
1062
|
+
* LP rejection response
|
|
1063
|
+
*
|
|
1064
|
+
* @generated from field: silvana.settlement.v1.RfqReject rfq_reject = 16;
|
|
1065
|
+
*/
|
|
1066
|
+
value: RfqReject;
|
|
1067
|
+
case: "rfqReject";
|
|
846
1068
|
} | {
|
|
847
1069
|
case: undefined;
|
|
848
1070
|
value?: undefined;
|
|
@@ -1829,6 +2051,12 @@ export type RecordTransactionRequest = Message<"silvana.settlement.v1.RecordTran
|
|
|
1829
2051
|
* @generated from field: optional string amount = 12;
|
|
1830
2052
|
*/
|
|
1831
2053
|
amount?: string;
|
|
2054
|
+
/**
|
|
2055
|
+
* instrument_id from instruments table
|
|
2056
|
+
*
|
|
2057
|
+
* @generated from field: optional string token = 27;
|
|
2058
|
+
*/
|
|
2059
|
+
token?: string;
|
|
1832
2060
|
/**
|
|
1833
2061
|
* @generated from field: optional string rewards_amount = 13;
|
|
1834
2062
|
*/
|
|
@@ -2033,6 +2261,12 @@ export type TransactionHistoryEntry = Message<"silvana.settlement.v1.Transaction
|
|
|
2033
2261
|
* @generated from field: optional string amount = 12;
|
|
2034
2262
|
*/
|
|
2035
2263
|
amount?: string;
|
|
2264
|
+
/**
|
|
2265
|
+
* instrument_id from instruments table
|
|
2266
|
+
*
|
|
2267
|
+
* @generated from field: optional string token = 27;
|
|
2268
|
+
*/
|
|
2269
|
+
token?: string;
|
|
2036
2270
|
/**
|
|
2037
2271
|
* @generated from field: optional string rewards_amount = 13;
|
|
2038
2272
|
*/
|
|
@@ -2633,7 +2867,11 @@ export declare enum TransactionType {
|
|
|
2633
2867
|
/**
|
|
2634
2868
|
* @generated from enum value: TRANSACTION_TYPE_OTHER = 13;
|
|
2635
2869
|
*/
|
|
2636
|
-
OTHER = 13
|
|
2870
|
+
OTHER = 13,
|
|
2871
|
+
/**
|
|
2872
|
+
* @generated from enum value: TRANSACTION_TYPE_TRANSFER = 14;
|
|
2873
|
+
*/
|
|
2874
|
+
TRANSFER = 14
|
|
2637
2875
|
}
|
|
2638
2876
|
/**
|
|
2639
2877
|
* Describes the enum silvana.settlement.v1.TransactionType.
|
|
@@ -3012,6 +3250,72 @@ export declare enum NextAction {
|
|
|
3012
3250
|
* Describes the enum silvana.settlement.v1.NextAction.
|
|
3013
3251
|
*/
|
|
3014
3252
|
export declare const NextActionSchema: GenEnum<NextAction>;
|
|
3253
|
+
/**
|
|
3254
|
+
* Direction the user wants to trade
|
|
3255
|
+
*
|
|
3256
|
+
* @generated from enum silvana.settlement.v1.RfqDirection
|
|
3257
|
+
*/
|
|
3258
|
+
export declare enum RfqDirection {
|
|
3259
|
+
/**
|
|
3260
|
+
* @generated from enum value: RFQ_DIRECTION_UNSPECIFIED = 0;
|
|
3261
|
+
*/
|
|
3262
|
+
UNSPECIFIED = 0,
|
|
3263
|
+
/**
|
|
3264
|
+
* User wants to buy base instrument
|
|
3265
|
+
*
|
|
3266
|
+
* @generated from enum value: RFQ_DIRECTION_BUY = 1;
|
|
3267
|
+
*/
|
|
3268
|
+
BUY = 1,
|
|
3269
|
+
/**
|
|
3270
|
+
* User wants to sell base instrument
|
|
3271
|
+
*
|
|
3272
|
+
* @generated from enum value: RFQ_DIRECTION_SELL = 2;
|
|
3273
|
+
*/
|
|
3274
|
+
SELL = 2
|
|
3275
|
+
}
|
|
3276
|
+
/**
|
|
3277
|
+
* Describes the enum silvana.settlement.v1.RfqDirection.
|
|
3278
|
+
*/
|
|
3279
|
+
export declare const RfqDirectionSchema: GenEnum<RfqDirection>;
|
|
3280
|
+
/**
|
|
3281
|
+
* RFQ rejection reason
|
|
3282
|
+
*
|
|
3283
|
+
* @generated from enum silvana.settlement.v1.RfqRejectionReason
|
|
3284
|
+
*/
|
|
3285
|
+
export declare enum RfqRejectionReason {
|
|
3286
|
+
/**
|
|
3287
|
+
* @generated from enum value: RFQ_REJECTION_REASON_UNSPECIFIED = 0;
|
|
3288
|
+
*/
|
|
3289
|
+
UNSPECIFIED = 0,
|
|
3290
|
+
/**
|
|
3291
|
+
* @generated from enum value: RFQ_REJECTION_REASON_MARKET_NOT_SUPPORTED = 1;
|
|
3292
|
+
*/
|
|
3293
|
+
MARKET_NOT_SUPPORTED = 1,
|
|
3294
|
+
/**
|
|
3295
|
+
* @generated from enum value: RFQ_REJECTION_REASON_AMOUNT_TOO_LARGE = 2;
|
|
3296
|
+
*/
|
|
3297
|
+
AMOUNT_TOO_LARGE = 2,
|
|
3298
|
+
/**
|
|
3299
|
+
* @generated from enum value: RFQ_REJECTION_REASON_AMOUNT_TOO_SMALL = 3;
|
|
3300
|
+
*/
|
|
3301
|
+
AMOUNT_TOO_SMALL = 3,
|
|
3302
|
+
/**
|
|
3303
|
+
* @generated from enum value: RFQ_REJECTION_REASON_INSUFFICIENT_INVENTORY = 4;
|
|
3304
|
+
*/
|
|
3305
|
+
INSUFFICIENT_INVENTORY = 4,
|
|
3306
|
+
/**
|
|
3307
|
+
* @generated from enum value: RFQ_REJECTION_REASON_MARKET_CONDITIONS = 5;
|
|
3308
|
+
*/
|
|
3309
|
+
MARKET_CONDITIONS = 5,
|
|
3310
|
+
/**
|
|
3311
|
+
* @generated from enum value: RFQ_REJECTION_REASON_TEMPORARILY_UNAVAILABLE = 6;
|
|
3312
|
+
*/
|
|
3313
|
+
TEMPORARILY_UNAVAILABLE = 6
|
|
3314
|
+
}
|
|
3315
|
+
/**
|
|
3316
|
+
* Describes the enum silvana.settlement.v1.RfqRejectionReason.
|
|
3317
|
+
*/
|
|
3318
|
+
export declare const RfqRejectionReasonSchema: GenEnum<RfqRejectionReason>;
|
|
3015
3319
|
/**
|
|
3016
3320
|
* Result of a settlement event
|
|
3017
3321
|
*
|