@smart-byte/leani-sdk 0.1.0-rc.1 → 0.1.0-rc.3

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.
@@ -236,10 +236,25 @@ export interface paths {
236
236
  };
237
237
  cookie?: never;
238
238
  };
239
- /** Query processor entities */
239
+ /**
240
+ * Query processor entities
241
+ * @description Without a cursor, reads current retained output in entity-key order
242
+ * without creating a snapshot; its `nextCursor` continues that read,
243
+ * and later pages see later commits. A cursor from a snapshot reads the
244
+ * snapshot's next page. Create a stable snapshot with POST.
245
+ */
240
246
  get: operations["queryProcessorEntities"];
241
247
  put?: never;
242
- post?: never;
248
+ /**
249
+ * Snapshot processor entities
250
+ * @description Copies the matching retained output into a stable, short-lived
251
+ * snapshot and returns its first page. Read later pages with GET and the
252
+ * page's `nextCursor`, and release the snapshot when done. A
253
+ * `finalized_only` processor's snapshot holds blocks whose changes are
254
+ * not published yet, so it offers no boundary to follow:
255
+ * `boundaryCursor` and `recovery.follow` are null.
256
+ */
257
+ post: operations["createProcessorEntitySnapshot"];
243
258
  delete?: never;
244
259
  options?: never;
245
260
  head?: never;
@@ -417,11 +432,21 @@ export interface paths {
417
432
  };
418
433
  cookie?: never;
419
434
  };
420
- /** Read a durable consumer */
435
+ /**
436
+ * Read a durable consumer
437
+ * @description Administrative: only the bearer token protects it, whether or not the
438
+ * consumer has a credential, as for the consumer list. A credential
439
+ * isolates applications on the consumer-scoped delivery routes.
440
+ */
421
441
  get: operations["getDurableConsumer"];
422
442
  put?: never;
423
443
  post?: never;
424
- /** Revoke a durable consumer */
444
+ /**
445
+ * Revoke a durable consumer
446
+ * @description Administrative: only the bearer token protects it, whether or not the
447
+ * consumer has a credential, so an operator can revoke a consumer whose
448
+ * credential is lost.
449
+ */
425
450
  delete: operations["revokeDurableConsumer"];
426
451
  options?: never;
427
452
  head?: never;
@@ -433,8 +458,13 @@ export interface paths {
433
458
  query?: never;
434
459
  header?: {
435
460
  /**
436
- * @description Consumer-scoped credential. An administrator bearer credential can be
437
- * used instead on the protected listener.
461
+ * @description The consumer's credential. A consumer created with one needs it, in
462
+ * addition to any bearer token, on its lease, change, acknowledgement,
463
+ * and stream requests, and gets 403 `forbidden` without it or with
464
+ * another; the node compares it in constant time. Listing, inspecting,
465
+ * and revoking consumers need only the bearer token. A consumer without
466
+ * one, such as a configured consumer, takes none. Credentials created
467
+ * before 32 characters were required keep working.
438
468
  */
439
469
  "x-leani-consumer-credential"?: components["parameters"]["ConsumerCredential"];
440
470
  };
@@ -446,7 +476,12 @@ export interface paths {
446
476
  };
447
477
  get?: never;
448
478
  put?: never;
449
- /** Renew a durable consumer lease */
479
+ /**
480
+ * Renew a durable consumer lease
481
+ * @description A split live stream fences renewal by session, so its processors get
482
+ * 409 `consumer_session_required`; renew through
483
+ * `/streams/live/consumers/{consumer}/lease` instead.
484
+ */
450
485
  post: operations["renewDurableConsumerLease"];
451
486
  delete?: never;
452
487
  options?: never;
@@ -459,8 +494,13 @@ export interface paths {
459
494
  query?: never;
460
495
  header?: {
461
496
  /**
462
- * @description Consumer-scoped credential. An administrator bearer credential can be
463
- * used instead on the protected listener.
497
+ * @description The consumer's credential. A consumer created with one needs it, in
498
+ * addition to any bearer token, on its lease, change, acknowledgement,
499
+ * and stream requests, and gets 403 `forbidden` without it or with
500
+ * another; the node compares it in constant time. Listing, inspecting,
501
+ * and revoking consumers need only the bearer token. A consumer without
502
+ * one, such as a configured consumer, takes none. Credentials created
503
+ * before 32 characters were required keep working.
464
504
  */
465
505
  "x-leani-consumer-credential"?: components["parameters"]["ConsumerCredential"];
466
506
  };
@@ -485,8 +525,13 @@ export interface paths {
485
525
  query?: never;
486
526
  header?: {
487
527
  /**
488
- * @description Consumer-scoped credential. An administrator bearer credential can be
489
- * used instead on the protected listener.
528
+ * @description The consumer's credential. A consumer created with one needs it, in
529
+ * addition to any bearer token, on its lease, change, acknowledgement,
530
+ * and stream requests, and gets 403 `forbidden` without it or with
531
+ * another; the node compares it in constant time. Listing, inspecting,
532
+ * and revoking consumers need only the bearer token. A consumer without
533
+ * one, such as a configured consumer, takes none. Credentials created
534
+ * before 32 characters were required keep working.
490
535
  */
491
536
  "x-leani-consumer-credential"?: components["parameters"]["ConsumerCredential"];
492
537
  };
@@ -498,7 +543,14 @@ export interface paths {
498
543
  };
499
544
  get?: never;
500
545
  put?: never;
501
- /** Acknowledge durable consumer changes */
546
+ /**
547
+ * Acknowledge durable consumer changes
548
+ * @description A cursor beyond the consumer's delivered sequence gets 409
549
+ * `acknowledgement_beyond_delivered`. A split live stream fences
550
+ * acknowledgement by session, so its processors get 409
551
+ * `consumer_session_required`; acknowledge through
552
+ * `/streams/live/consumers/{consumer}/ack` instead.
553
+ */
502
554
  post: operations["acknowledgeDurableConsumerChanges"];
503
555
  delete?: never;
504
556
  options?: never;
@@ -569,8 +621,13 @@ export interface paths {
569
621
  query?: never;
570
622
  header?: {
571
623
  /**
572
- * @description Consumer-scoped credential. An administrator bearer credential can be
573
- * used instead on the protected listener.
624
+ * @description The consumer's credential. A consumer created with one needs it, in
625
+ * addition to any bearer token, on its lease, change, acknowledgement,
626
+ * and stream requests, and gets 403 `forbidden` without it or with
627
+ * another; the node compares it in constant time. Listing, inspecting,
628
+ * and revoking consumers need only the bearer token. A consumer without
629
+ * one, such as a configured consumer, takes none. Credentials created
630
+ * before 32 characters were required keep working.
574
631
  */
575
632
  "x-leani-consumer-credential"?: components["parameters"]["ConsumerCredential"];
576
633
  };
@@ -580,7 +637,15 @@ export interface paths {
580
637
  };
581
638
  cookie?: never;
582
639
  };
583
- /** Stream the dedicated live lane for a durable consumer */
640
+ /**
641
+ * Stream the dedicated live lane for a durable consumer
642
+ * @description Each batch holds one whole block's commit, and records the consumer's
643
+ * delivered sequence through it. A request whose `Sec-Fetch-Site` is
644
+ * `cross-site` or `same-site` without an allowed `Origin`, such as a
645
+ * navigation of another site's frame, gets 403 `cross_site_request`.
646
+ * When the node shuts down, the stream ends after a whole record;
647
+ * reconnect to resume after the acknowledged cursor.
648
+ */
584
649
  get: operations["streamLiveDurableConsumer"];
585
650
  put?: never;
586
651
  post?: never;
@@ -595,8 +660,13 @@ export interface paths {
595
660
  query?: never;
596
661
  header?: {
597
662
  /**
598
- * @description Consumer-scoped credential. An administrator bearer credential can be
599
- * used instead on the protected listener.
663
+ * @description The consumer's credential. A consumer created with one needs it, in
664
+ * addition to any bearer token, on its lease, change, acknowledgement,
665
+ * and stream requests, and gets 403 `forbidden` without it or with
666
+ * another; the node compares it in constant time. Listing, inspecting,
667
+ * and revoking consumers need only the bearer token. A consumer without
668
+ * one, such as a configured consumer, takes none. Credentials created
669
+ * before 32 characters were required keep working.
600
670
  */
601
671
  "x-leani-consumer-credential"?: components["parameters"]["ConsumerCredential"];
602
672
  };
@@ -608,7 +678,13 @@ export interface paths {
608
678
  };
609
679
  get?: never;
610
680
  put?: never;
611
- /** Acknowledge a live-lane consumer batch */
681
+ /**
682
+ * Acknowledge a live-lane consumer batch
683
+ * @description The cursor must end a block's commit, as a batch's
684
+ * `acknowledgeableCursor` does, and gets 409
685
+ * `acknowledgement_mid_block` otherwise. A cursor beyond the consumer's
686
+ * delivered sequence gets 409 `acknowledgement_beyond_delivered`.
687
+ */
612
688
  post: operations["acknowledgeLiveDurableConsumer"];
613
689
  delete?: never;
614
690
  options?: never;
@@ -621,8 +697,13 @@ export interface paths {
621
697
  query?: never;
622
698
  header?: {
623
699
  /**
624
- * @description Consumer-scoped credential. An administrator bearer credential can be
625
- * used instead on the protected listener.
700
+ * @description The consumer's credential. A consumer created with one needs it, in
701
+ * addition to any bearer token, on its lease, change, acknowledgement,
702
+ * and stream requests, and gets 403 `forbidden` without it or with
703
+ * another; the node compares it in constant time. Listing, inspecting,
704
+ * and revoking consumers need only the bearer token. A consumer without
705
+ * one, such as a configured consumer, takes none. Credentials created
706
+ * before 32 characters were required keep working.
626
707
  */
627
708
  "x-leani-consumer-credential"?: components["parameters"]["ConsumerCredential"];
628
709
  };
@@ -648,8 +729,13 @@ export interface paths {
648
729
  query?: never;
649
730
  header?: {
650
731
  /**
651
- * @description Consumer-scoped credential. An administrator bearer credential can be
652
- * used instead on the protected listener.
732
+ * @description The consumer's credential. A consumer created with one needs it, in
733
+ * addition to any bearer token, on its lease, change, acknowledgement,
734
+ * and stream requests, and gets 403 `forbidden` without it or with
735
+ * another; the node compares it in constant time. Listing, inspecting,
736
+ * and revoking consumers need only the bearer token. A consumer without
737
+ * one, such as a configured consumer, takes none. Credentials created
738
+ * before 32 characters were required keep working.
653
739
  */
654
740
  "x-leani-consumer-credential"?: components["parameters"]["ConsumerCredential"];
655
741
  };
@@ -674,8 +760,13 @@ export interface paths {
674
760
  query?: never;
675
761
  header?: {
676
762
  /**
677
- * @description Consumer-scoped credential. An administrator bearer credential can be
678
- * used instead on the protected listener.
763
+ * @description The consumer's credential. A consumer created with one needs it, in
764
+ * addition to any bearer token, on its lease, change, acknowledgement,
765
+ * and stream requests, and gets 403 `forbidden` without it or with
766
+ * another; the node compares it in constant time. Listing, inspecting,
767
+ * and revoking consumers need only the bearer token. A consumer without
768
+ * one, such as a configured consumer, takes none. Credentials created
769
+ * before 32 characters were required keep working.
679
770
  */
680
771
  "x-leani-consumer-credential"?: components["parameters"]["ConsumerCredential"];
681
772
  };
@@ -685,7 +776,15 @@ export interface paths {
685
776
  };
686
777
  cookie?: never;
687
778
  };
688
- /** Stream changes from one backfill subscription */
779
+ /**
780
+ * Stream changes from one backfill subscription
781
+ * @description Each batch and the completion record the consumer's delivered
782
+ * sequence through their acknowledgement boundary. A request whose
783
+ * `Sec-Fetch-Site` is `cross-site` or `same-site` without an allowed
784
+ * `Origin`, such as a navigation of another site's frame, gets 403
785
+ * `cross_site_request`. When the node shuts down, the stream ends after
786
+ * a whole record; reconnect to resume after the acknowledged cursor.
787
+ */
689
788
  get: operations["streamBackfillConsumer"];
690
789
  put?: never;
691
790
  post?: never;
@@ -700,8 +799,13 @@ export interface paths {
700
799
  query?: never;
701
800
  header?: {
702
801
  /**
703
- * @description Consumer-scoped credential. An administrator bearer credential can be
704
- * used instead on the protected listener.
802
+ * @description The consumer's credential. A consumer created with one needs it, in
803
+ * addition to any bearer token, on its lease, change, acknowledgement,
804
+ * and stream requests, and gets 403 `forbidden` without it or with
805
+ * another; the node compares it in constant time. Listing, inspecting,
806
+ * and revoking consumers need only the bearer token. A consumer without
807
+ * one, such as a configured consumer, takes none. Credentials created
808
+ * before 32 characters were required keep working.
705
809
  */
706
810
  "x-leani-consumer-credential"?: components["parameters"]["ConsumerCredential"];
707
811
  };
@@ -713,7 +817,13 @@ export interface paths {
713
817
  };
714
818
  get?: never;
715
819
  put?: never;
716
- /** Acknowledge a backfill subscription batch */
820
+ /**
821
+ * Acknowledge a backfill subscription batch
822
+ * @description The cursor must be a batch's `acknowledgeableCursor` or the
823
+ * completion's `cursor` (409 `acknowledgement_invalid` otherwise), and
824
+ * not beyond the consumer's delivered sequence (409
825
+ * `acknowledgement_beyond_delivered`).
826
+ */
717
827
  post: operations["acknowledgeBackfillConsumer"];
718
828
  delete?: never;
719
829
  options?: never;
@@ -726,8 +836,13 @@ export interface paths {
726
836
  query?: never;
727
837
  header?: {
728
838
  /**
729
- * @description Consumer-scoped credential. An administrator bearer credential can be
730
- * used instead on the protected listener.
839
+ * @description The consumer's credential. A consumer created with one needs it, in
840
+ * addition to any bearer token, on its lease, change, acknowledgement,
841
+ * and stream requests, and gets 403 `forbidden` without it or with
842
+ * another; the node compares it in constant time. Listing, inspecting,
843
+ * and revoking consumers need only the bearer token. A consumer without
844
+ * one, such as a configured consumer, takes none. Credentials created
845
+ * before 32 characters were required keep working.
731
846
  */
732
847
  "x-leani-consumer-credential"?: components["parameters"]["ConsumerCredential"];
733
848
  };
@@ -815,7 +930,20 @@ export interface paths {
815
930
  /** List backfill subscriptions */
816
931
  get: operations["listBackfillSubscriptions"];
817
932
  put?: never;
818
- /** Create a backfill subscription */
933
+ /**
934
+ * Create a backfill subscription
935
+ * @description A new subscription's consumer `credential` holds 32 to 512 printable
936
+ * ASCII characters without spaces (400 otherwise). Re-submitting an
937
+ * existing subscription's request unchanged returns its status, even
938
+ * with a credential from before that rule. The credential enters the
939
+ * request's idempotency identity, an unkeyed BLAKE3 hash of the whole
940
+ * request that the node keeps, so use a random one.
941
+ *
942
+ * A range that starts past the node's finalized head gets 409
943
+ * `range_after_finalized_head`, and one that only ends past it
944
+ * `history_not_finalized`. Their `details.currentFinalizedHead` holds
945
+ * the head's `number` and its `hash` as `0x` hex.
946
+ */
819
947
  post: operations["createBackfillSubscription"];
820
948
  delete?: never;
821
949
  options?: never;
@@ -836,13 +964,46 @@ export interface paths {
836
964
  get: operations["getBackfillSubscription"];
837
965
  put?: never;
838
966
  post?: never;
839
- /** Delete a terminal backfill subscription */
967
+ /**
968
+ * Delete a terminal backfill subscription
969
+ * @description A completed subscription can be deleted once its consumer acknowledged
970
+ * the completion. A failed or cancelled one can be deleted once its
971
+ * required consumer acknowledged every delivered record, and gets 409
972
+ * `backfill_conflict` while one is unacknowledged: read its stream to
973
+ * the end and acknowledge, or pass `discardUnacknowledged=true`.
974
+ */
840
975
  delete: operations["deleteBackfillSubscription"];
841
976
  options?: never;
842
977
  head?: never;
843
978
  patch?: never;
844
979
  trace?: never;
845
980
  };
981
+ "/admin/v1/backfill-subscriptions/{id}/retry": {
982
+ parameters: {
983
+ query?: never;
984
+ header?: never;
985
+ path: {
986
+ id: components["parameters"]["Identifier"];
987
+ };
988
+ cookie?: never;
989
+ };
990
+ get?: never;
991
+ put?: never;
992
+ /**
993
+ * Retry a failed backfill subscription
994
+ * @description Re-queues a failed subscription. It resumes from its committed
995
+ * progress with the same history stream, consumer, and acknowledgement,
996
+ * and its error is cleared. A subscription that is still active returns
997
+ * its status unchanged; a completed or cancelled one gets 409
998
+ * `backfill_conflict`.
999
+ */
1000
+ post: operations["retryBackfillSubscription"];
1001
+ delete?: never;
1002
+ options?: never;
1003
+ head?: never;
1004
+ patch?: never;
1005
+ trace?: never;
1006
+ };
846
1007
  "/admin/v1/backfill-subscriptions/{id}/cancel": {
847
1008
  parameters: {
848
1009
  query?: never;
@@ -872,7 +1033,13 @@ export interface paths {
872
1033
  /** List materialization jobs */
873
1034
  get: operations["listMaterializationJobs"];
874
1035
  put?: never;
875
- /** Create a materialization job */
1036
+ /**
1037
+ * Create a materialization job
1038
+ * @description A range that starts past the node's finalized head gets 409
1039
+ * `range_after_finalized_head`, and one that only ends past it
1040
+ * `history_not_finalized`. Their `details.currentFinalizedHead` holds
1041
+ * the head's `number` and its `hash` as `0x` hex.
1042
+ */
876
1043
  post: operations["createMaterializationJob"];
877
1044
  delete?: never;
878
1045
  options?: never;
@@ -1243,7 +1410,6 @@ export interface components {
1243
1410
  /** @example -1000000000000000000 */
1244
1411
  SignedDecimalQuantity: string;
1245
1412
  Hash32: string;
1246
- ByteArray32: number[];
1247
1413
  Address: string;
1248
1414
  /** @description Store-, chain-, and processor-bound opaque value. */
1249
1415
  Cursor: string;
@@ -1349,8 +1515,15 @@ export interface components {
1349
1515
  /** @description Highest covered block recorded as finalized. This is not a contiguous-coverage guarantee; lower gaps or non-finalized blocks can exist. Inspect available intervals for exact finalized coverage. */
1350
1516
  finalizedThrough: components["schemas"]["SafeInteger"] | null;
1351
1517
  complete: boolean;
1352
- /** @enum {string} */
1353
- state: "starting" | "backfilling" | "catching_up" | "live" | "degraded" | "failed";
1518
+ /**
1519
+ * @description `paused` and `failed` report the processor's live lane;
1520
+ * `/v1/network/status` gives its `pauseReason`. `catching_up`
1521
+ * means the range has no gaps but the processor has not reached
1522
+ * `chainFinalizedHead` or the node is not ready; only then is it
1523
+ * `live`.
1524
+ * @enum {string}
1525
+ */
1526
+ state: "starting" | "backfilling" | "catching_up" | "live" | "degraded" | "paused" | "failed";
1354
1527
  };
1355
1528
  ChainFinalizedHead: {
1356
1529
  number: components["schemas"]["SafeInteger"];
@@ -1385,11 +1558,20 @@ export interface components {
1385
1558
  blockTimestamp: components["schemas"]["SafeInteger"];
1386
1559
  finality: components["schemas"]["Finality"];
1387
1560
  };
1561
+ GenericOutputPage: {
1562
+ data: components["schemas"]["GenericOutputEntity"][];
1563
+ nextCursor: components["schemas"]["Cursor"] | null;
1564
+ retainedBounds: components["schemas"]["OutputBounds"] | null;
1565
+ coverage: components["schemas"]["ProcessorCoverage"];
1566
+ };
1388
1567
  GenericSnapshotPage: {
1389
1568
  data: components["schemas"]["GenericOutputEntity"][];
1390
1569
  nextCursor: components["schemas"]["Cursor"] | null;
1391
1570
  snapshotId: string;
1392
- /** @description Null when the processor has delivery disabled. */
1571
+ /**
1572
+ * @description Null when the processor has delivery disabled or is
1573
+ * `finalized_only`, whose retained state holds unpublished blocks.
1574
+ */
1393
1575
  boundaryCursor: components["schemas"]["Cursor"] | null;
1394
1576
  rowCount: components["schemas"]["DecimalQuantity"];
1395
1577
  /** @description Snapshot accounting bytes, including entity keys and row overhead. */
@@ -1425,19 +1607,43 @@ export interface components {
1425
1607
  cursor: components["schemas"]["Cursor"];
1426
1608
  };
1427
1609
  leaseTtlSeconds: number;
1610
+ /**
1611
+ * @description A random secret of 32 to 512 printable ASCII characters without
1612
+ * spaces, such as `openssl rand -hex 32`. Only a hash keyed with the
1613
+ * node's secret is stored. The consumer's lease, change,
1614
+ * acknowledgement, and stream requests then need it; listing,
1615
+ * inspecting, and revoking consumers need only the bearer token.
1616
+ * These bounds apply to a new consumer: the node checks the ID
1617
+ * first, so an existing consumer ID gets 409 `consumer_exists`
1618
+ * whatever the credential, even one outside them.
1619
+ */
1428
1620
  credential: string;
1429
1621
  };
1430
1622
  DurableConsumer: {
1431
1623
  id: string;
1432
1624
  processorInstance: string;
1625
+ /**
1626
+ * @description The delivery stream this consumer reads: the processor's live or
1627
+ * canonical stream, or a backfill subscription's history stream.
1628
+ */
1629
+ streamId: string;
1433
1630
  /** @enum {string} */
1434
1631
  role: "required" | "best_effort";
1435
1632
  /** @enum {string} */
1436
1633
  state: "active" | "reset_required" | "revoked";
1437
1634
  acknowledgedSequence: components["schemas"]["DecimalQuantity"];
1635
+ /**
1636
+ * @description The last sequence a page read or stream batch handed to this
1637
+ * consumer; acknowledgement cannot pass it.
1638
+ */
1438
1639
  deliveredSequence: components["schemas"]["DecimalQuantity"];
1439
1640
  acknowledgedCursor: components["schemas"]["Cursor"];
1440
1641
  deliveredCursor: components["schemas"]["Cursor"];
1642
+ /**
1643
+ * @description How many stream sessions have taken this consumer's lease; each
1644
+ * new session fences the one before it. `0` before the first.
1645
+ */
1646
+ leaseGeneration: components["schemas"]["DecimalQuantity"];
1441
1647
  leaseTtlMs: components["schemas"]["DecimalQuantity"];
1442
1648
  leaseExpiresAtUnixMs: components["schemas"]["DecimalQuantity"];
1443
1649
  leaseActive: boolean;
@@ -1452,8 +1658,8 @@ export interface components {
1452
1658
  checkpointId: components["schemas"]["SafeInteger"];
1453
1659
  processorInstance: string;
1454
1660
  blockNumber: components["schemas"]["SafeInteger"];
1455
- blockHash: components["schemas"]["ByteArray32"];
1456
- stateChecksum: components["schemas"]["ByteArray32"];
1661
+ blockHash: components["schemas"]["Hash32"];
1662
+ stateChecksum: components["schemas"]["Hash32"];
1457
1663
  stateBytes: components["schemas"]["SafeInteger"];
1458
1664
  createdAtUnixMs: components["schemas"]["SafeInteger"];
1459
1665
  };
@@ -1469,8 +1675,8 @@ export interface components {
1469
1675
  savepointId: string;
1470
1676
  processorInstance: string;
1471
1677
  blockNumber: components["schemas"]["SafeInteger"];
1472
- blockHash: components["schemas"]["ByteArray32"];
1473
- stateChecksum: components["schemas"]["ByteArray32"];
1678
+ blockHash: components["schemas"]["Hash32"];
1679
+ stateChecksum: components["schemas"]["Hash32"];
1474
1680
  stateBytes: components["schemas"]["SafeInteger"];
1475
1681
  createdAtUnixMs: components["schemas"]["SafeInteger"];
1476
1682
  };
@@ -1484,12 +1690,15 @@ export interface components {
1484
1690
  blobCount: components["schemas"]["SafeInteger"];
1485
1691
  blobGasUsed: components["schemas"]["DecimalQuantity"];
1486
1692
  excessBlobGas: components["schemas"]["DecimalQuantity"];
1693
+ /** @description Protocol blob base fee in wei per blob gas: the EIP-4844 fee for excessBlobGas under the fork active at the block's timestamp. EIP-7918 does not change it. */
1487
1694
  blobBaseFee: components["schemas"]["DecimalQuantity"];
1488
1695
  executionBaseFee: components["schemas"]["DecimalQuantity"];
1489
1696
  gasUsed: components["schemas"]["DecimalQuantity"];
1490
1697
  gasLimit: components["schemas"]["DecimalQuantity"];
1491
1698
  executionEthBurnedWei: components["schemas"]["DecimalQuantity"];
1699
+ /** @description blobBaseFee times blobGasUsed. */
1492
1700
  blobEthBurnedWei: components["schemas"]["DecimalQuantity"];
1701
+ /** @description EIP-7918 reserve price in wei per blob gas from Fusaka on, null before. It only changes how excess blob gas evolves and is not applied to blobBaseFee. */
1493
1702
  reserveFeeWei: components["schemas"]["DecimalQuantity"] | null;
1494
1703
  transactionCount: components["schemas"]["SafeInteger"];
1495
1704
  targetBlobsPerBlock: components["schemas"]["SafeInteger"];
@@ -1508,11 +1717,14 @@ export interface components {
1508
1717
  blobCount: components["schemas"]["SafeInteger"];
1509
1718
  totalBurnedWei: components["schemas"]["DecimalQuantity"];
1510
1719
  executionBurnedWei: components["schemas"]["DecimalQuantity"];
1720
+ /** @description The block's blobBaseFee times this transaction's blob gas. */
1511
1721
  blobBurnedWei: components["schemas"]["DecimalQuantity"];
1512
1722
  };
1513
1723
  BlobSchedule: {
1514
1724
  name: string;
1725
+ /** @description Block-number label for atBlock lookups. For Dencun it is 19426589, the first block the blobs processor covers. */
1515
1726
  activationBlock: components["schemas"]["SafeInteger"];
1727
+ /** @description The fork's parameters apply to blocks from this timestamp on. */
1516
1728
  activationTimestamp: components["schemas"]["SafeInteger"];
1517
1729
  forkId: string;
1518
1730
  targetBlobsPerBlock: components["schemas"]["SafeInteger"];
@@ -1531,6 +1743,8 @@ export interface components {
1531
1743
  finality: components["schemas"]["Finality"];
1532
1744
  coverageFrom: components["schemas"]["SafeInteger"];
1533
1745
  complete: boolean;
1746
+ /** @description Block whose transfer the ledger could not apply for this token and holder, an outgoing transfer above the derived balance or an incoming one that overflows it. From that block the pair is incomplete and no longer derived, and balance keeps its last derived value. Null while the pair is derived. */
1747
+ incompleteFrom: components["schemas"]["SafeInteger"] | null;
1534
1748
  /** @constant */
1535
1749
  method: "erc20_transfer_ledger";
1536
1750
  };
@@ -1606,12 +1820,77 @@ export interface components {
1606
1820
  /** @description Versioned processor change schema identifier. */
1607
1821
  schema: string;
1608
1822
  key: string | null;
1823
+ /**
1824
+ * @description The processor's entity for `apply` and `undo`. For `finalized`,
1825
+ * the `system.finality.put` kind carries `{ throughBlock }`, and the
1826
+ * `system.live_gap.put` kind carries
1827
+ * `{ fromBlock, toBlock, reason: "not_filled" }`: blocks the live
1828
+ * lane skipped, such as after a restart at a later finalized anchor.
1829
+ * Leani does not fill them; request them as history.
1830
+ */
1609
1831
  data: unknown;
1610
1832
  /** @description Present only on reset_required events. */
1611
1833
  coverage?: components["schemas"]["ProcessorCoverage"];
1612
1834
  /** @description Stable emission timestamp. */
1613
1835
  emittedAt: string;
1614
1836
  };
1837
+ LiveStreamRecord: components["schemas"]["LiveStreamHello"] | components["schemas"]["LiveStreamBatch"] | components["schemas"]["StreamHeartbeat"] | components["schemas"]["StreamFailure"];
1838
+ LiveStreamHello: {
1839
+ /** @constant */
1840
+ type: "hello";
1841
+ /** @constant */
1842
+ apiVersion: "1";
1843
+ chainId: components["schemas"]["SafeInteger"];
1844
+ processor: components["schemas"]["ProcessorSummary"];
1845
+ streamId: string;
1846
+ /** @constant */
1847
+ streamKind: "live";
1848
+ acknowledgedCursor: components["schemas"]["Cursor"];
1849
+ storeEpoch: string;
1850
+ heartbeatIntervalMs: components["schemas"]["DecimalQuantity"];
1851
+ /** @description Send as `x-leani-consumer-session` to acknowledge, renew, or release. */
1852
+ sessionToken: string;
1853
+ sessionExpiresAtUnixMs: components["schemas"]["DecimalQuantity"];
1854
+ leaseTtlMs: components["schemas"]["DecimalQuantity"];
1855
+ /** @description What the processor covers as the session starts, to diff against the destination. */
1856
+ coverage: components["schemas"]["ProcessorCoverage"];
1857
+ };
1858
+ LiveStreamBatch: {
1859
+ /** @constant */
1860
+ type: "batch";
1861
+ streamId: string;
1862
+ /** @enum {string} */
1863
+ originKind: "live" | "live_recovery";
1864
+ originId: string;
1865
+ publicationRevision: components["schemas"]["DecimalQuantity"];
1866
+ fromBlock: components["schemas"]["SafeInteger"];
1867
+ throughBlock: components["schemas"]["SafeInteger"];
1868
+ processedBlockCount: components["schemas"]["DecimalQuantity"];
1869
+ /** @description Changes other than `system.*` kinds. */
1870
+ domainChangeCount: components["schemas"]["DecimalQuantity"];
1871
+ progressUnitCount: components["schemas"]["DecimalQuantity"];
1872
+ rawPayloadBytes: components["schemas"]["DecimalQuantity"];
1873
+ uncompressedEncodedBytes: components["schemas"]["DecimalQuantity"];
1874
+ transmittedBytes: components["schemas"]["DecimalQuantity"];
1875
+ buildDelayMs: components["schemas"]["DecimalQuantity"];
1876
+ firstCursor: components["schemas"]["Cursor"];
1877
+ lastCursor: components["schemas"]["Cursor"];
1878
+ acknowledgeableCursor: components["schemas"]["Cursor"];
1879
+ changes: components["schemas"]["ChangeEnvelope"][];
1880
+ };
1881
+ StreamHeartbeat: {
1882
+ /** @constant */
1883
+ type: "heartbeat";
1884
+ emittedAt: string;
1885
+ };
1886
+ StreamFailure: {
1887
+ /** @enum {string} */
1888
+ type: "error" | "reset_required";
1889
+ code: string;
1890
+ message: string;
1891
+ earliestAvailableSequence: components["schemas"]["DecimalQuantity"] | null;
1892
+ latestAvailableSequence: components["schemas"]["DecimalQuantity"] | null;
1893
+ };
1615
1894
  ChangeHead: {
1616
1895
  earliestSequence: components["schemas"]["DecimalQuantity"] | null;
1617
1896
  latestSequence: components["schemas"]["DecimalQuantity"] | null;
@@ -1672,10 +1951,21 @@ export interface components {
1672
1951
  Collection: string;
1673
1952
  Consumer: string;
1674
1953
  /**
1675
- * @description Consumer-scoped credential. An administrator bearer credential can be
1676
- * used instead on the protected listener.
1954
+ * @description The consumer's credential. A consumer created with one needs it, in
1955
+ * addition to any bearer token, on its lease, change, acknowledgement,
1956
+ * and stream requests, and gets 403 `forbidden` without it or with
1957
+ * another; the node compares it in constant time. Listing, inspecting,
1958
+ * and revoking consumers need only the bearer token. A consumer without
1959
+ * one, such as a configured consumer, takes none. Credentials created
1960
+ * before 32 characters were required keep working.
1677
1961
  */
1678
1962
  ConsumerCredential: string;
1963
+ /**
1964
+ * @description Marks a mutating request without a JSON body as sent by a Leani
1965
+ * client. A POST or DELETE needs `content-type: application/json` or
1966
+ * this header, and gets HTTP 415 otherwise.
1967
+ */
1968
+ LeaniRequest: "1";
1679
1969
  Subscription: string;
1680
1970
  Identifier: string;
1681
1971
  Block: components["schemas"]["SafeInteger"];
@@ -1943,7 +2233,14 @@ export interface operations {
1943
2233
  /** @description Opaque cursor of the last fully committed event. */
1944
2234
  after?: components["parameters"]["After"];
1945
2235
  };
1946
- header?: never;
2236
+ header?: {
2237
+ /**
2238
+ * @description The id of the last event received, which is its cursor, as an
2239
+ * EventSource sends it when it reconnects. The stream resumes after
2240
+ * it when `after` is absent.
2241
+ */
2242
+ "Last-Event-ID"?: components["schemas"]["Cursor"];
2243
+ };
1947
2244
  path: {
1948
2245
  processor: components["parameters"]["Processor"];
1949
2246
  };
@@ -1953,7 +2250,11 @@ export interface operations {
1953
2250
  responses: {
1954
2251
  /**
1955
2252
  * @description Resumable SSE stream. The event id is the opaque resume cursor and
1956
- * each data field contains one ChangeEnvelope.
2253
+ * each data field contains one ChangeEnvelope. When the node shuts
2254
+ * down, the stream ends after a whole event; reconnect after the
2255
+ * last event's id. An `error` event carries an ErrorBody and ends
2256
+ * the stream; reconnect only when its `retryable` is true. A stored
2257
+ * change the node cannot render is not retryable.
1957
2258
  */
1958
2259
  200: {
1959
2260
  headers: {
@@ -2007,6 +2308,34 @@ export interface operations {
2007
2308
  cookie?: never;
2008
2309
  };
2009
2310
  requestBody?: never;
2311
+ responses: {
2312
+ /** @description A page of current output, or of a snapshot for a snapshot cursor. */
2313
+ 200: {
2314
+ headers: {
2315
+ [name: string]: unknown;
2316
+ };
2317
+ content: {
2318
+ "application/json": components["schemas"]["GenericOutputPage"] | components["schemas"]["GenericSnapshotPage"];
2319
+ };
2320
+ };
2321
+ default: components["responses"]["Error"];
2322
+ };
2323
+ };
2324
+ createProcessorEntitySnapshot: {
2325
+ parameters: {
2326
+ query?: never;
2327
+ header?: never;
2328
+ path: {
2329
+ processor: components["parameters"]["Processor"];
2330
+ collection: components["parameters"]["Collection"];
2331
+ };
2332
+ cookie?: never;
2333
+ };
2334
+ requestBody: {
2335
+ content: {
2336
+ "application/json": components["schemas"]["OutputQuery"];
2337
+ };
2338
+ };
2010
2339
  responses: {
2011
2340
  /** @description Stable retained-output snapshot page. */
2012
2341
  200: {
@@ -2106,7 +2435,14 @@ export interface operations {
2106
2435
  releaseProcessorQuerySnapshot: {
2107
2436
  parameters: {
2108
2437
  query?: never;
2109
- header?: never;
2438
+ header?: {
2439
+ /**
2440
+ * @description Marks a mutating request without a JSON body as sent by a Leani
2441
+ * client. A POST or DELETE needs `content-type: application/json` or
2442
+ * this header, and gets HTTP 415 otherwise.
2443
+ */
2444
+ "x-leani-request"?: components["parameters"]["LeaniRequest"];
2445
+ };
2110
2446
  path: {
2111
2447
  processor: components["parameters"]["Processor"];
2112
2448
  snapshot: string;
@@ -2153,7 +2489,14 @@ export interface operations {
2153
2489
  restoreProcessorRecoveryCheckpoint: {
2154
2490
  parameters: {
2155
2491
  query?: never;
2156
- header?: never;
2492
+ header?: {
2493
+ /**
2494
+ * @description Marks a mutating request without a JSON body as sent by a Leani
2495
+ * client. A POST or DELETE needs `content-type: application/json` or
2496
+ * this header, and gets HTTP 415 otherwise.
2497
+ */
2498
+ "x-leani-request"?: components["parameters"]["LeaniRequest"];
2499
+ };
2157
2500
  path: {
2158
2501
  processor: components["parameters"]["Processor"];
2159
2502
  checkpoint: components["schemas"]["SafeInteger"];
@@ -2225,6 +2568,30 @@ export interface operations {
2225
2568
  "application/json": components["schemas"]["PortableSavepoint"];
2226
2569
  };
2227
2570
  };
2571
+ /**
2572
+ * @description `savepoint_limit`: the processor instance already keeps 16
2573
+ * savepoints; delete one first. `savepoint_exists`: the ID is taken.
2574
+ */
2575
+ 409: {
2576
+ headers: {
2577
+ [name: string]: unknown;
2578
+ };
2579
+ content: {
2580
+ "application/json": components["schemas"]["ErrorBody"];
2581
+ };
2582
+ };
2583
+ /**
2584
+ * @description `physical_storage_limit`: the savepoint would exceed the physical
2585
+ * store budget. Free space or raise the budget first.
2586
+ */
2587
+ 507: {
2588
+ headers: {
2589
+ [name: string]: unknown;
2590
+ };
2591
+ content: {
2592
+ "application/json": components["schemas"]["ErrorBody"];
2593
+ };
2594
+ };
2228
2595
  default: components["responses"]["Error"];
2229
2596
  };
2230
2597
  };
@@ -2255,7 +2622,14 @@ export interface operations {
2255
2622
  deleteProcessorSavepoint: {
2256
2623
  parameters: {
2257
2624
  query?: never;
2258
- header?: never;
2625
+ header?: {
2626
+ /**
2627
+ * @description Marks a mutating request without a JSON body as sent by a Leani
2628
+ * client. A POST or DELETE needs `content-type: application/json` or
2629
+ * this header, and gets HTTP 415 otherwise.
2630
+ */
2631
+ "x-leani-request"?: components["parameters"]["LeaniRequest"];
2632
+ };
2259
2633
  path: {
2260
2634
  processor: components["parameters"]["Processor"];
2261
2635
  savepoint: string;
@@ -2353,7 +2727,14 @@ export interface operations {
2353
2727
  revokeDurableConsumer: {
2354
2728
  parameters: {
2355
2729
  query?: never;
2356
- header?: never;
2730
+ header?: {
2731
+ /**
2732
+ * @description Marks a mutating request without a JSON body as sent by a Leani
2733
+ * client. A POST or DELETE needs `content-type: application/json` or
2734
+ * this header, and gets HTTP 415 otherwise.
2735
+ */
2736
+ "x-leani-request"?: components["parameters"]["LeaniRequest"];
2737
+ };
2357
2738
  path: {
2358
2739
  processor: components["parameters"]["Processor"];
2359
2740
  consumer: components["parameters"]["Consumer"];
@@ -2379,10 +2760,21 @@ export interface operations {
2379
2760
  query?: never;
2380
2761
  header?: {
2381
2762
  /**
2382
- * @description Consumer-scoped credential. An administrator bearer credential can be
2383
- * used instead on the protected listener.
2763
+ * @description The consumer's credential. A consumer created with one needs it, in
2764
+ * addition to any bearer token, on its lease, change, acknowledgement,
2765
+ * and stream requests, and gets 403 `forbidden` without it or with
2766
+ * another; the node compares it in constant time. Listing, inspecting,
2767
+ * and revoking consumers need only the bearer token. A consumer without
2768
+ * one, such as a configured consumer, takes none. Credentials created
2769
+ * before 32 characters were required keep working.
2384
2770
  */
2385
2771
  "x-leani-consumer-credential"?: components["parameters"]["ConsumerCredential"];
2772
+ /**
2773
+ * @description Marks a mutating request without a JSON body as sent by a Leani
2774
+ * client. A POST or DELETE needs `content-type: application/json` or
2775
+ * this header, and gets HTTP 415 otherwise.
2776
+ */
2777
+ "x-leani-request"?: components["parameters"]["LeaniRequest"];
2386
2778
  };
2387
2779
  path: {
2388
2780
  processor: components["parameters"]["Processor"];
@@ -2411,8 +2803,13 @@ export interface operations {
2411
2803
  };
2412
2804
  header?: {
2413
2805
  /**
2414
- * @description Consumer-scoped credential. An administrator bearer credential can be
2415
- * used instead on the protected listener.
2806
+ * @description The consumer's credential. A consumer created with one needs it, in
2807
+ * addition to any bearer token, on its lease, change, acknowledgement,
2808
+ * and stream requests, and gets 403 `forbidden` without it or with
2809
+ * another; the node compares it in constant time. Listing, inspecting,
2810
+ * and revoking consumers need only the bearer token. A consumer without
2811
+ * one, such as a configured consumer, takes none. Credentials created
2812
+ * before 32 characters were required keep working.
2416
2813
  */
2417
2814
  "x-leani-consumer-credential"?: components["parameters"]["ConsumerCredential"];
2418
2815
  };
@@ -2424,7 +2821,11 @@ export interface operations {
2424
2821
  };
2425
2822
  requestBody?: never;
2426
2823
  responses: {
2427
- /** @description Replay batch; advances only the delivered head. */
2824
+ /**
2825
+ * @description Replay batch after the acknowledgement. Its last change becomes
2826
+ * the consumer's delivered sequence, which bounds acknowledgement;
2827
+ * the acknowledgement does not move.
2828
+ */
2428
2829
  200: {
2429
2830
  headers: {
2430
2831
  [name: string]: unknown;
@@ -2441,8 +2842,13 @@ export interface operations {
2441
2842
  query?: never;
2442
2843
  header?: {
2443
2844
  /**
2444
- * @description Consumer-scoped credential. An administrator bearer credential can be
2445
- * used instead on the protected listener.
2845
+ * @description The consumer's credential. A consumer created with one needs it, in
2846
+ * addition to any bearer token, on its lease, change, acknowledgement,
2847
+ * and stream requests, and gets 403 `forbidden` without it or with
2848
+ * another; the node compares it in constant time. Listing, inspecting,
2849
+ * and revoking consumers need only the bearer token. A consumer without
2850
+ * one, such as a configured consumer, takes none. Credentials created
2851
+ * before 32 characters were required keep working.
2446
2852
  */
2447
2853
  "x-leani-consumer-credential"?: components["parameters"]["ConsumerCredential"];
2448
2854
  };
@@ -2541,8 +2947,13 @@ export interface operations {
2541
2947
  query?: never;
2542
2948
  header?: {
2543
2949
  /**
2544
- * @description Consumer-scoped credential. An administrator bearer credential can be
2545
- * used instead on the protected listener.
2950
+ * @description The consumer's credential. A consumer created with one needs it, in
2951
+ * addition to any bearer token, on its lease, change, acknowledgement,
2952
+ * and stream requests, and gets 403 `forbidden` without it or with
2953
+ * another; the node compares it in constant time. Listing, inspecting,
2954
+ * and revoking consumers need only the bearer token. A consumer without
2955
+ * one, such as a configured consumer, takes none. Credentials created
2956
+ * before 32 characters were required keep working.
2546
2957
  */
2547
2958
  "x-leani-consumer-credential"?: components["parameters"]["ConsumerCredential"];
2548
2959
  };
@@ -2554,12 +2965,21 @@ export interface operations {
2554
2965
  };
2555
2966
  requestBody?: never;
2556
2967
  responses: {
2557
- /** @description Server-sent live-lane batches. */
2968
+ /**
2969
+ * @description Newline-delimited JSON records: first a `hello` with the
2970
+ * processor's coverage as the session starts, then whole-block
2971
+ * `batch` records and, while idle, `heartbeat` records. An `error`
2972
+ * or `reset_required` record ends the stream. A batch of a
2973
+ * `system.live_gap.put` change announces blocks the live lane
2974
+ * skipped, which no batch delivers.
2975
+ */
2558
2976
  200: {
2559
2977
  headers: {
2560
2978
  [name: string]: unknown;
2561
2979
  };
2562
- content?: never;
2980
+ content: {
2981
+ "application/x-ndjson": components["schemas"]["LiveStreamRecord"];
2982
+ };
2563
2983
  };
2564
2984
  default: components["responses"]["Error"];
2565
2985
  };
@@ -2569,8 +2989,13 @@ export interface operations {
2569
2989
  query?: never;
2570
2990
  header?: {
2571
2991
  /**
2572
- * @description Consumer-scoped credential. An administrator bearer credential can be
2573
- * used instead on the protected listener.
2992
+ * @description The consumer's credential. A consumer created with one needs it, in
2993
+ * addition to any bearer token, on its lease, change, acknowledgement,
2994
+ * and stream requests, and gets 403 `forbidden` without it or with
2995
+ * another; the node compares it in constant time. Listing, inspecting,
2996
+ * and revoking consumers need only the bearer token. A consumer without
2997
+ * one, such as a configured consumer, takes none. Credentials created
2998
+ * before 32 characters were required keep working.
2574
2999
  */
2575
3000
  "x-leani-consumer-credential"?: components["parameters"]["ConsumerCredential"];
2576
3001
  };
@@ -2597,10 +3022,21 @@ export interface operations {
2597
3022
  query?: never;
2598
3023
  header?: {
2599
3024
  /**
2600
- * @description Consumer-scoped credential. An administrator bearer credential can be
2601
- * used instead on the protected listener.
3025
+ * @description The consumer's credential. A consumer created with one needs it, in
3026
+ * addition to any bearer token, on its lease, change, acknowledgement,
3027
+ * and stream requests, and gets 403 `forbidden` without it or with
3028
+ * another; the node compares it in constant time. Listing, inspecting,
3029
+ * and revoking consumers need only the bearer token. A consumer without
3030
+ * one, such as a configured consumer, takes none. Credentials created
3031
+ * before 32 characters were required keep working.
2602
3032
  */
2603
3033
  "x-leani-consumer-credential"?: components["parameters"]["ConsumerCredential"];
3034
+ /**
3035
+ * @description Marks a mutating request without a JSON body as sent by a Leani
3036
+ * client. A POST or DELETE needs `content-type: application/json` or
3037
+ * this header, and gets HTTP 415 otherwise.
3038
+ */
3039
+ "x-leani-request"?: components["parameters"]["LeaniRequest"];
2604
3040
  };
2605
3041
  path: {
2606
3042
  processor: components["parameters"]["Processor"];
@@ -2625,10 +3061,21 @@ export interface operations {
2625
3061
  query?: never;
2626
3062
  header?: {
2627
3063
  /**
2628
- * @description Consumer-scoped credential. An administrator bearer credential can be
2629
- * used instead on the protected listener.
3064
+ * @description The consumer's credential. A consumer created with one needs it, in
3065
+ * addition to any bearer token, on its lease, change, acknowledgement,
3066
+ * and stream requests, and gets 403 `forbidden` without it or with
3067
+ * another; the node compares it in constant time. Listing, inspecting,
3068
+ * and revoking consumers need only the bearer token. A consumer without
3069
+ * one, such as a configured consumer, takes none. Credentials created
3070
+ * before 32 characters were required keep working.
2630
3071
  */
2631
3072
  "x-leani-consumer-credential"?: components["parameters"]["ConsumerCredential"];
3073
+ /**
3074
+ * @description Marks a mutating request without a JSON body as sent by a Leani
3075
+ * client. A POST or DELETE needs `content-type: application/json` or
3076
+ * this header, and gets HTTP 415 otherwise.
3077
+ */
3078
+ "x-leani-request"?: components["parameters"]["LeaniRequest"];
2632
3079
  };
2633
3080
  path: {
2634
3081
  processor: components["parameters"]["Processor"];
@@ -2653,8 +3100,13 @@ export interface operations {
2653
3100
  query?: never;
2654
3101
  header?: {
2655
3102
  /**
2656
- * @description Consumer-scoped credential. An administrator bearer credential can be
2657
- * used instead on the protected listener.
3103
+ * @description The consumer's credential. A consumer created with one needs it, in
3104
+ * addition to any bearer token, on its lease, change, acknowledgement,
3105
+ * and stream requests, and gets 403 `forbidden` without it or with
3106
+ * another; the node compares it in constant time. Listing, inspecting,
3107
+ * and revoking consumers need only the bearer token. A consumer without
3108
+ * one, such as a configured consumer, takes none. Credentials created
3109
+ * before 32 characters were required keep working.
2658
3110
  */
2659
3111
  "x-leani-consumer-credential"?: components["parameters"]["ConsumerCredential"];
2660
3112
  };
@@ -2681,8 +3133,13 @@ export interface operations {
2681
3133
  query?: never;
2682
3134
  header?: {
2683
3135
  /**
2684
- * @description Consumer-scoped credential. An administrator bearer credential can be
2685
- * used instead on the protected listener.
3136
+ * @description The consumer's credential. A consumer created with one needs it, in
3137
+ * addition to any bearer token, on its lease, change, acknowledgement,
3138
+ * and stream requests, and gets 403 `forbidden` without it or with
3139
+ * another; the node compares it in constant time. Listing, inspecting,
3140
+ * and revoking consumers need only the bearer token. A consumer without
3141
+ * one, such as a configured consumer, takes none. Credentials created
3142
+ * before 32 characters were required keep working.
2686
3143
  */
2687
3144
  "x-leani-consumer-credential"?: components["parameters"]["ConsumerCredential"];
2688
3145
  };
@@ -2709,8 +3166,13 @@ export interface operations {
2709
3166
  query?: never;
2710
3167
  header?: {
2711
3168
  /**
2712
- * @description Consumer-scoped credential. An administrator bearer credential can be
2713
- * used instead on the protected listener.
3169
+ * @description The consumer's credential. A consumer created with one needs it, in
3170
+ * addition to any bearer token, on its lease, change, acknowledgement,
3171
+ * and stream requests, and gets 403 `forbidden` without it or with
3172
+ * another; the node compares it in constant time. Listing, inspecting,
3173
+ * and revoking consumers need only the bearer token. A consumer without
3174
+ * one, such as a configured consumer, takes none. Credentials created
3175
+ * before 32 characters were required keep working.
2714
3176
  */
2715
3177
  "x-leani-consumer-credential"?: components["parameters"]["ConsumerCredential"];
2716
3178
  };
@@ -2737,10 +3199,21 @@ export interface operations {
2737
3199
  query?: never;
2738
3200
  header?: {
2739
3201
  /**
2740
- * @description Consumer-scoped credential. An administrator bearer credential can be
2741
- * used instead on the protected listener.
3202
+ * @description The consumer's credential. A consumer created with one needs it, in
3203
+ * addition to any bearer token, on its lease, change, acknowledgement,
3204
+ * and stream requests, and gets 403 `forbidden` without it or with
3205
+ * another; the node compares it in constant time. Listing, inspecting,
3206
+ * and revoking consumers need only the bearer token. A consumer without
3207
+ * one, such as a configured consumer, takes none. Credentials created
3208
+ * before 32 characters were required keep working.
2742
3209
  */
2743
3210
  "x-leani-consumer-credential"?: components["parameters"]["ConsumerCredential"];
3211
+ /**
3212
+ * @description Marks a mutating request without a JSON body as sent by a Leani
3213
+ * client. A POST or DELETE needs `content-type: application/json` or
3214
+ * this header, and gets HTTP 415 otherwise.
3215
+ */
3216
+ "x-leani-request"?: components["parameters"]["LeaniRequest"];
2744
3217
  };
2745
3218
  path: {
2746
3219
  subscription: components["parameters"]["Subscription"];
@@ -2765,10 +3238,21 @@ export interface operations {
2765
3238
  query?: never;
2766
3239
  header?: {
2767
3240
  /**
2768
- * @description Consumer-scoped credential. An administrator bearer credential can be
2769
- * used instead on the protected listener.
3241
+ * @description The consumer's credential. A consumer created with one needs it, in
3242
+ * addition to any bearer token, on its lease, change, acknowledgement,
3243
+ * and stream requests, and gets 403 `forbidden` without it or with
3244
+ * another; the node compares it in constant time. Listing, inspecting,
3245
+ * and revoking consumers need only the bearer token. A consumer without
3246
+ * one, such as a configured consumer, takes none. Credentials created
3247
+ * before 32 characters were required keep working.
2770
3248
  */
2771
3249
  "x-leani-consumer-credential"?: components["parameters"]["ConsumerCredential"];
3250
+ /**
3251
+ * @description Marks a mutating request without a JSON body as sent by a Leani
3252
+ * client. A POST or DELETE needs `content-type: application/json` or
3253
+ * this header, and gets HTTP 415 otherwise.
3254
+ */
3255
+ "x-leani-request"?: components["parameters"]["LeaniRequest"];
2772
3256
  };
2773
3257
  path: {
2774
3258
  subscription: components["parameters"]["Subscription"];
@@ -2791,7 +3275,14 @@ export interface operations {
2791
3275
  resetProcessorLiveLane: {
2792
3276
  parameters: {
2793
3277
  query?: never;
2794
- header?: never;
3278
+ header?: {
3279
+ /**
3280
+ * @description Marks a mutating request without a JSON body as sent by a Leani
3281
+ * client. A POST or DELETE needs `content-type: application/json` or
3282
+ * this header, and gets HTTP 415 otherwise.
3283
+ */
3284
+ "x-leani-request"?: components["parameters"]["LeaniRequest"];
3285
+ };
2795
3286
  path: {
2796
3287
  processor: components["parameters"]["Processor"];
2797
3288
  };
@@ -2806,13 +3297,35 @@ export interface operations {
2806
3297
  };
2807
3298
  content?: never;
2808
3299
  };
3300
+ /**
3301
+ * @description The lane cannot be reset. `single_block_exceeds_delivery_limit`:
3302
+ * its first unapplied block still exceeds the delivery limit; raise
3303
+ * the limit first. `live_lane_requires_rebuild`: the lane failed with
3304
+ * `processor_finality_conflict`, so its coverage contradicts the
3305
+ * canonical chain; rebuild the processor as a replacement instance.
3306
+ */
3307
+ 409: {
3308
+ headers: {
3309
+ [name: string]: unknown;
3310
+ };
3311
+ content: {
3312
+ "application/json": components["schemas"]["ErrorBody"];
3313
+ };
3314
+ };
2809
3315
  default: components["responses"]["Error"];
2810
3316
  };
2811
3317
  };
2812
3318
  deleteProcessorArtifacts: {
2813
3319
  parameters: {
2814
3320
  query?: never;
2815
- header?: never;
3321
+ header?: {
3322
+ /**
3323
+ * @description Marks a mutating request without a JSON body as sent by a Leani
3324
+ * client. A POST or DELETE needs `content-type: application/json` or
3325
+ * this header, and gets HTTP 415 otherwise.
3326
+ */
3327
+ "x-leani-request"?: components["parameters"]["LeaniRequest"];
3328
+ };
2816
3329
  path: {
2817
3330
  processor: components["parameters"]["Processor"];
2818
3331
  };
@@ -2879,8 +3392,8 @@ export interface operations {
2879
3392
  };
2880
3393
  requestBody?: never;
2881
3394
  responses: {
2882
- /** @description Created backfill subscription. */
2883
- 201: {
3395
+ /** @description Backfill subscription accepted; its current status. */
3396
+ 202: {
2884
3397
  headers: {
2885
3398
  [name: string]: unknown;
2886
3399
  };
@@ -2912,8 +3425,22 @@ export interface operations {
2912
3425
  };
2913
3426
  deleteBackfillSubscription: {
2914
3427
  parameters: {
2915
- query?: never;
2916
- header?: never;
3428
+ query?: {
3429
+ /**
3430
+ * @description Delete a failed or cancelled subscription although its required
3431
+ * consumer has not acknowledged every record. Has no effect on a
3432
+ * subscription that is still running.
3433
+ */
3434
+ discardUnacknowledged?: boolean;
3435
+ };
3436
+ header?: {
3437
+ /**
3438
+ * @description Marks a mutating request without a JSON body as sent by a Leani
3439
+ * client. A POST or DELETE needs `content-type: application/json` or
3440
+ * this header, and gets HTTP 415 otherwise.
3441
+ */
3442
+ "x-leani-request"?: components["parameters"]["LeaniRequest"];
3443
+ };
2917
3444
  path: {
2918
3445
  id: components["parameters"]["Identifier"];
2919
3446
  };
@@ -2931,10 +3458,45 @@ export interface operations {
2931
3458
  default: components["responses"]["Error"];
2932
3459
  };
2933
3460
  };
3461
+ retryBackfillSubscription: {
3462
+ parameters: {
3463
+ query?: never;
3464
+ header?: {
3465
+ /**
3466
+ * @description Marks a mutating request without a JSON body as sent by a Leani
3467
+ * client. A POST or DELETE needs `content-type: application/json` or
3468
+ * this header, and gets HTTP 415 otherwise.
3469
+ */
3470
+ "x-leani-request"?: components["parameters"]["LeaniRequest"];
3471
+ };
3472
+ path: {
3473
+ id: components["parameters"]["Identifier"];
3474
+ };
3475
+ cookie?: never;
3476
+ };
3477
+ requestBody?: never;
3478
+ responses: {
3479
+ /** @description Retried backfill subscription. */
3480
+ 200: {
3481
+ headers: {
3482
+ [name: string]: unknown;
3483
+ };
3484
+ content?: never;
3485
+ };
3486
+ default: components["responses"]["Error"];
3487
+ };
3488
+ };
2934
3489
  cancelBackfillSubscription: {
2935
3490
  parameters: {
2936
3491
  query?: never;
2937
- header?: never;
3492
+ header?: {
3493
+ /**
3494
+ * @description Marks a mutating request without a JSON body as sent by a Leani
3495
+ * client. A POST or DELETE needs `content-type: application/json` or
3496
+ * this header, and gets HTTP 415 otherwise.
3497
+ */
3498
+ "x-leani-request"?: components["parameters"]["LeaniRequest"];
3499
+ };
2938
3500
  path: {
2939
3501
  id: components["parameters"]["Identifier"];
2940
3502
  };
@@ -2980,8 +3542,8 @@ export interface operations {
2980
3542
  };
2981
3543
  requestBody?: never;
2982
3544
  responses: {
2983
- /** @description Created materialization job. */
2984
- 201: {
3545
+ /** @description Materialization job accepted; its current status. */
3546
+ 202: {
2985
3547
  headers: {
2986
3548
  [name: string]: unknown;
2987
3549
  };
@@ -3014,7 +3576,14 @@ export interface operations {
3014
3576
  deleteMaterializationJob: {
3015
3577
  parameters: {
3016
3578
  query?: never;
3017
- header?: never;
3579
+ header?: {
3580
+ /**
3581
+ * @description Marks a mutating request without a JSON body as sent by a Leani
3582
+ * client. A POST or DELETE needs `content-type: application/json` or
3583
+ * this header, and gets HTTP 415 otherwise.
3584
+ */
3585
+ "x-leani-request"?: components["parameters"]["LeaniRequest"];
3586
+ };
3018
3587
  path: {
3019
3588
  id: components["parameters"]["Identifier"];
3020
3589
  };
@@ -3035,7 +3604,14 @@ export interface operations {
3035
3604
  cancelMaterializationJob: {
3036
3605
  parameters: {
3037
3606
  query?: never;
3038
- header?: never;
3607
+ header?: {
3608
+ /**
3609
+ * @description Marks a mutating request without a JSON body as sent by a Leani
3610
+ * client. A POST or DELETE needs `content-type: application/json` or
3611
+ * this header, and gets HTTP 415 otherwise.
3612
+ */
3613
+ "x-leani-request"?: components["parameters"]["LeaniRequest"];
3614
+ };
3039
3615
  path: {
3040
3616
  id: components["parameters"]["Identifier"];
3041
3617
  };
@@ -3081,8 +3657,8 @@ export interface operations {
3081
3657
  };
3082
3658
  requestBody?: never;
3083
3659
  responses: {
3084
- /** @description Created raw-history job. */
3085
- 201: {
3660
+ /** @description Raw-history job accepted; its current state. */
3661
+ 202: {
3086
3662
  headers: {
3087
3663
  [name: string]: unknown;
3088
3664
  };
@@ -3115,7 +3691,14 @@ export interface operations {
3115
3691
  deleteRawHistoryJob: {
3116
3692
  parameters: {
3117
3693
  query?: never;
3118
- header?: never;
3694
+ header?: {
3695
+ /**
3696
+ * @description Marks a mutating request without a JSON body as sent by a Leani
3697
+ * client. A POST or DELETE needs `content-type: application/json` or
3698
+ * this header, and gets HTTP 415 otherwise.
3699
+ */
3700
+ "x-leani-request"?: components["parameters"]["LeaniRequest"];
3701
+ };
3119
3702
  path: {
3120
3703
  id: components["parameters"]["Identifier"];
3121
3704
  };
@@ -3136,7 +3719,14 @@ export interface operations {
3136
3719
  cancelRawHistoryJob: {
3137
3720
  parameters: {
3138
3721
  query?: never;
3139
- header?: never;
3722
+ header?: {
3723
+ /**
3724
+ * @description Marks a mutating request without a JSON body as sent by a Leani
3725
+ * client. A POST or DELETE needs `content-type: application/json` or
3726
+ * this header, and gets HTTP 415 otherwise.
3727
+ */
3728
+ "x-leani-request"?: components["parameters"]["LeaniRequest"];
3729
+ };
3140
3730
  path: {
3141
3731
  id: components["parameters"]["Identifier"];
3142
3732
  };
@@ -3503,4 +4093,3 @@ export interface operations {
3503
4093
  };
3504
4094
  };
3505
4095
  }
3506
- //# sourceMappingURL=openapi.generated.d.ts.map