@greatwait/contracts 0.1.0-alpha.5 → 0.1.0-alpha.6

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 (119) hide show
  1. package/dist/authority.d.ts +4 -1
  2. package/dist/authority.js +1 -0
  3. package/dist/data-export.d.ts +2 -0
  4. package/dist/delivery.d.ts +26 -0
  5. package/dist/delivery.js +2 -0
  6. package/dist/endpoints.d.ts +168 -0
  7. package/dist/endpoints.js +72 -1
  8. package/dist/http-request.d.ts +193 -0
  9. package/dist/http-request.js +305 -0
  10. package/dist/identity.d.ts +4 -4
  11. package/dist/index.d.ts +5 -3
  12. package/dist/index.js +4 -2
  13. package/dist/mcp.d.ts +2 -1
  14. package/dist/members.d.ts +141 -0
  15. package/dist/members.js +223 -0
  16. package/dist/oauth.d.ts +7 -0
  17. package/dist/operation-definitions.d.ts +20 -4
  18. package/dist/operation-definitions.js +9 -1
  19. package/dist/operations.d.ts +705 -39
  20. package/dist/operations.js +83 -10
  21. package/dist/organization-lifecycle.d.ts +10 -0
  22. package/dist/policy.js +5 -2
  23. package/dist/scheduling-records.d.ts +220 -0
  24. package/dist/scheduling-records.js +5 -0
  25. package/dist/scheduling.d.ts +236 -0
  26. package/dist/scheduling.js +31 -0
  27. package/dist/secrets.d.ts +7 -0
  28. package/dist/tenancy.d.ts +1 -1
  29. package/dist/tenancy.js +1 -1
  30. package/dist/zod-values.d.ts +2 -2
  31. package/dist/zod-values.js +1 -1
  32. package/generated/v1/examples/endpoints.ensure.request.json +3 -0
  33. package/generated/v1/examples/endpoints.ensure.response.json +20 -0
  34. package/generated/v1/examples/invitations.create.request.json +5 -0
  35. package/generated/v1/examples/invitations.create.response.json +7 -0
  36. package/generated/v1/examples/invitations.list.response.json +11 -0
  37. package/generated/v1/examples/invitations.resend.request.json +1 -0
  38. package/generated/v1/examples/invitations.resend.response.json +4 -0
  39. package/generated/v1/examples/invitations.revoke.request.json +3 -0
  40. package/generated/v1/examples/invitations.revoke.response.json +4 -0
  41. package/generated/v1/examples/members.list.response.json +13 -0
  42. package/generated/v1/examples/members.remove.request.json +3 -0
  43. package/generated/v1/examples/members.remove.response.json +4 -0
  44. package/generated/v1/examples/members.role.request.json +3 -0
  45. package/generated/v1/examples/members.role.response.json +4 -0
  46. package/generated/v1/examples/projectmembers.add.request.json +1 -0
  47. package/generated/v1/examples/projectmembers.add.response.json +4 -0
  48. package/generated/v1/examples/projectmembers.remove.request.json +3 -0
  49. package/generated/v1/examples/projectmembers.remove.response.json +4 -0
  50. package/generated/v1/manifest.json +285 -0
  51. package/generated/v1/openapi.json +8339 -773
  52. package/generated/v1/policy-matrix.json +72 -0
  53. package/generated/v1/schemas/context.read.response.json +1 -0
  54. package/generated/v1/schemas/credentials.connection.response.json +1 -0
  55. package/generated/v1/schemas/credentials.create.request.json +1 -0
  56. package/generated/v1/schemas/credentials.create.response.json +1 -0
  57. package/generated/v1/schemas/credentials.list.response.json +1 -0
  58. package/generated/v1/schemas/credentials.revoke.response.json +1 -0
  59. package/generated/v1/schemas/credentials.rotate.response.json +2 -0
  60. package/generated/v1/schemas/endpoints.acknowledgeSigningKeyRotation.response.json +59 -0
  61. package/generated/v1/schemas/endpoints.create.request.json +74 -0
  62. package/generated/v1/schemas/endpoints.create.response.json +59 -0
  63. package/generated/v1/schemas/endpoints.disable.response.json +59 -0
  64. package/generated/v1/schemas/endpoints.enable.response.json +59 -0
  65. package/generated/v1/schemas/endpoints.ensure.request.json +91 -0
  66. package/generated/v1/schemas/endpoints.ensure.response.json +169 -0
  67. package/generated/v1/schemas/endpoints.list.response.json +59 -0
  68. package/generated/v1/schemas/endpoints.read.response.json +59 -0
  69. package/generated/v1/schemas/endpoints.rotateSigningKey.response.json +59 -0
  70. package/generated/v1/schemas/endpoints.update.request.json +74 -0
  71. package/generated/v1/schemas/endpoints.update.response.json +59 -0
  72. package/generated/v1/schemas/grants.list.response.json +1 -0
  73. package/generated/v1/schemas/grants.revoke.response.json +1 -0
  74. package/generated/v1/schemas/invitations.create.request-headers.json +13 -0
  75. package/generated/v1/schemas/invitations.create.request.json +24 -0
  76. package/generated/v1/schemas/invitations.create.response.json +31 -0
  77. package/generated/v1/schemas/invitations.list.response.json +40 -0
  78. package/generated/v1/schemas/invitations.resend.request-headers.json +13 -0
  79. package/generated/v1/schemas/invitations.resend.request.json +6 -0
  80. package/generated/v1/schemas/invitations.resend.response.json +27 -0
  81. package/generated/v1/schemas/invitations.revoke.request-headers.json +13 -0
  82. package/generated/v1/schemas/invitations.revoke.request.json +12 -0
  83. package/generated/v1/schemas/invitations.revoke.response.json +27 -0
  84. package/generated/v1/schemas/members.list.response.json +53 -0
  85. package/generated/v1/schemas/members.remove.request-headers.json +13 -0
  86. package/generated/v1/schemas/members.remove.request.json +12 -0
  87. package/generated/v1/schemas/members.remove.response.json +27 -0
  88. package/generated/v1/schemas/members.role.request-headers.json +13 -0
  89. package/generated/v1/schemas/members.role.request.json +12 -0
  90. package/generated/v1/schemas/members.role.response.json +27 -0
  91. package/generated/v1/schemas/projectmembers.add.request-headers.json +13 -0
  92. package/generated/v1/schemas/projectmembers.add.request.json +6 -0
  93. package/generated/v1/schemas/projectmembers.add.response.json +27 -0
  94. package/generated/v1/schemas/projectmembers.remove.request-headers.json +13 -0
  95. package/generated/v1/schemas/projectmembers.remove.request.json +12 -0
  96. package/generated/v1/schemas/projectmembers.remove.response.json +27 -0
  97. package/generated/v1/schemas/schedules.archive.response.json +138 -1
  98. package/generated/v1/schemas/schedules.cancel.response.json +138 -1
  99. package/generated/v1/schemas/schedules.create.request.json +150 -1
  100. package/generated/v1/schemas/schedules.create.response.json +156 -1
  101. package/generated/v1/schemas/schedules.list.response.json +138 -1
  102. package/generated/v1/schemas/schedules.pause.response.json +138 -1
  103. package/generated/v1/schemas/schedules.read.response.json +138 -1
  104. package/generated/v1/schemas/schedules.replace.request.json +150 -1
  105. package/generated/v1/schemas/schedules.replace.response.json +156 -1
  106. package/generated/v1/schemas/schedules.resume.response.json +138 -1
  107. package/generated/v1/snippets/endpoints.create.json +1 -1
  108. package/generated/v1/snippets/endpoints.ensure.json +6 -0
  109. package/generated/v1/snippets/invitations.create.json +6 -0
  110. package/generated/v1/snippets/invitations.list.json +6 -0
  111. package/generated/v1/snippets/invitations.resend.json +6 -0
  112. package/generated/v1/snippets/invitations.revoke.json +6 -0
  113. package/generated/v1/snippets/journey/create-destination.json +1 -1
  114. package/generated/v1/snippets/members.list.json +6 -0
  115. package/generated/v1/snippets/members.remove.json +6 -0
  116. package/generated/v1/snippets/members.role.json +6 -0
  117. package/generated/v1/snippets/projectmembers.add.json +6 -0
  118. package/generated/v1/snippets/projectmembers.remove.json +6 -0
  119. package/package.json +1 -1
@@ -161,6 +161,15 @@ export interface OperationDefinition {
161
161
  * scopes every call needs. Generators publish them for consent clients.
162
162
  */
163
163
  readonly conditionalScopes?: readonly Scope[];
164
+ /**
165
+ * When `conditionalScopes` apply, as the clause the published description
166
+ * ends with ("… is required as well when …"). Absent means the original
167
+ * case: a target the caller did not create. W9-44 added the second case — a
168
+ * schedule write naming a `url` with no endpoint behind it — and a document
169
+ * describing it with the credential wording would send an integrator
170
+ * looking for somebody else's resource.
171
+ */
172
+ readonly conditionalScopesWhen?: string;
164
173
  /** Problem codes this operation may return, beyond the universal ones. */
165
174
  readonly problems: readonly ProblemCode[];
166
175
  /**
@@ -419,18 +428,80 @@ export declare const OPERATIONS: readonly [{
419
428
  readonly surfaces: readonly ["api", "mock"];
420
429
  }, OperationDefinition & {
421
430
  readonly id: "exports.create";
431
+ } & {
432
+ readonly request: import("zod").ZodObject<{}, import("zod/v4/core").$strict>;
422
433
  }, OperationDefinition & {
423
434
  readonly id: "exports.read";
424
435
  }, OperationDefinition & {
425
436
  readonly id: "exports.part";
426
437
  }, OperationDefinition & {
427
438
  readonly id: "exports.cancel";
439
+ }, OperationDefinition & {
440
+ readonly id: "members.list";
441
+ }, OperationDefinition & {
442
+ readonly id: "invitations.list";
443
+ }, OperationDefinition & {
444
+ readonly id: "invitations.create";
445
+ } & {
446
+ readonly request: import("zod").ZodObject<{
447
+ email: import("zod").ZodString;
448
+ role: import("zod").ZodEnum<{
449
+ admin: "admin";
450
+ member: "member";
451
+ }>;
452
+ projects: import("zod").ZodArray<import("zod").ZodString>;
453
+ }, import("zod/v4/core").$strict>;
454
+ }, OperationDefinition & {
455
+ readonly id: "invitations.resend";
456
+ } & {
457
+ readonly request: import("zod").ZodObject<{}, import("zod/v4/core").$strict>;
458
+ }, OperationDefinition & {
459
+ readonly id: "invitations.revoke";
460
+ } & {
461
+ readonly request: import("zod").ZodObject<{
462
+ confirmed: import("zod").ZodLiteral<true>;
463
+ }, import("zod/v4/core").$strict>;
464
+ }, OperationDefinition & {
465
+ readonly id: "members.role";
466
+ } & {
467
+ readonly request: import("zod").ZodObject<{
468
+ role: import("zod").ZodEnum<{
469
+ admin: "admin";
470
+ member: "member";
471
+ }>;
472
+ }, import("zod/v4/core").$strict>;
473
+ }, OperationDefinition & {
474
+ readonly id: "members.remove";
475
+ } & {
476
+ readonly request: import("zod").ZodObject<{
477
+ confirmed: import("zod").ZodLiteral<true>;
478
+ }, import("zod/v4/core").$strict>;
479
+ }, OperationDefinition & {
480
+ readonly id: "projectmembers.add";
481
+ } & {
482
+ readonly request: import("zod").ZodObject<{}, import("zod/v4/core").$strict>;
483
+ }, OperationDefinition & {
484
+ readonly id: "projectmembers.remove";
485
+ } & {
486
+ readonly request: import("zod").ZodObject<{
487
+ confirmed: import("zod").ZodLiteral<true>;
488
+ }, import("zod/v4/core").$strict>;
428
489
  }, OperationDefinition & {
429
490
  readonly id: "organizations.lifecycle";
430
491
  }, OperationDefinition & {
431
492
  readonly id: "organizations.close";
493
+ } & {
494
+ readonly request: import("zod").ZodObject<{
495
+ expectedGeneration: import("zod").ZodNumber;
496
+ immediate: import("zod").ZodBoolean;
497
+ confirmation: import("zod").ZodLiteral<"delete organization">;
498
+ }, import("zod/v4/core").$strict>;
432
499
  }, OperationDefinition & {
433
500
  readonly id: "organizations.restore";
501
+ } & {
502
+ readonly request: import("zod").ZodObject<{
503
+ expectedGeneration: import("zod").ZodNumber;
504
+ }, import("zod/v4/core").$strict>;
434
505
  }, {
435
506
  readonly creates: false;
436
507
  readonly description: "" | "Reports the service, environment, and build the request reached. Unauthenticated: it carries no customer data and is used by canaries and deployment smoke checks.";
@@ -585,7 +656,7 @@ export declare const OPERATIONS: readonly [{
585
656
  readonly surfaces: readonly ["mock"];
586
657
  }, {
587
658
  readonly creates: true;
588
- readonly description: "" | "Creates a reusable callback endpoint in the caller's project and environment. The destination must be HTTPS on effective port 443, contain no URL credentials or fragment, and resolve only to public unicast addresses. The endpoint is active and usable the moment it exists; there is nothing to verify. A disabled endpoint is never delivered to, and a schedule write naming one answers not_found, because disabling is terminal rather than a state to recover from. The per-endpoint secret is returned to this call and to no other call an API credential or an OAuth token can make; a signed-in member can read it again through endpoints.revealSigningSecret. There is no endpoint-count ceiling. Disabled endpoints remain readable for audit; request and DNS inspection admission bound creation work and reads are paged.";
659
+ readonly description: "" | "Creates a reusable callback endpoint in the caller's project and environment. The destination must be HTTPS on effective port 443, contain no URL credentials or fragment, and resolve only to public unicast addresses. The endpoint is active and usable the moment it exists; there is nothing to verify. A disabled endpoint is never delivered to, and a schedule write naming one answers not_found, because disabling is terminal rather than a state to recover from. The per-endpoint secret is returned to this call and to no other call an API credential or an OAuth token can make; a signed-in member can read it again through endpoints.revealSigningSecret. There is no endpoint-count ceiling. Disabled endpoints remain readable for audit; request and DNS inspection admission bound creation work and reads are paged. Optional `headers` set reusable defaults. Ordinary values remain readable; `secret: true` encrypts a write-only value that is never returned. Header edits use explicit `set`, `keep`, and `remove` actions.";
589
660
  readonly example: {
590
661
  createdAt?: never;
591
662
  environmentKind?: never;
@@ -619,7 +690,7 @@ export declare const OPERATIONS: readonly [{
619
690
  readonly idempotent: false;
620
691
  readonly mcp: {
621
692
  readonly kind: "unavailable";
622
- readonly reason: "Creation returns a one-time endpoint signing secret, and MCP has no negotiated secure-result channel that can keep it out of ordinary tool history.";
693
+ readonly reason: "Creation returns a one-time endpoint signing secret, and MCP has no negotiated secure-result channel that can keep it out of ordinary tool history. Agents use endpoints_ensure, or schedules_create with a `url`, which create an endpoint without returning its secret.";
623
694
  };
624
695
  readonly method: "POST";
625
696
  readonly mutates: true;
@@ -627,6 +698,21 @@ export declare const OPERATIONS: readonly [{
627
698
  readonly principals: readonly ["api-credential", "oauth", "session"];
628
699
  readonly problems: readonly ["state_conflict", "invalid_request", "plan_limit_reached", "rate_limited"];
629
700
  readonly request: import("zod").ZodObject<{
701
+ headers: import("zod").ZodOptional<import("zod").ZodArray<import("zod").ZodDiscriminatedUnion<[import("zod").ZodObject<{
702
+ action: import("zod").ZodLiteral<"set">;
703
+ name: import("zod").ZodString;
704
+ value: import("zod").ZodString;
705
+ secret: import("zod").ZodOptional<import("zod").ZodBoolean>;
706
+ }, import("zod/v4/core").$strict>, import("zod").ZodObject<{
707
+ action: import("zod").ZodLiteral<"keep">;
708
+ name: import("zod").ZodString;
709
+ }, import("zod/v4/core").$strict>, import("zod").ZodObject<{
710
+ action: import("zod").ZodLiteral<"remove">;
711
+ name: import("zod").ZodString;
712
+ }, import("zod/v4/core").$strict>, import("zod").ZodObject<{
713
+ action: import("zod").ZodLiteral<"suppress">;
714
+ name: import("zod").ZodString;
715
+ }, import("zod/v4/core").$strict>], "action">>>;
630
716
  name: import("zod").ZodOptional<import("zod").ZodString>;
631
717
  url: import("zod").ZodString;
632
718
  }, import("zod/v4/core").$strip>;
@@ -636,6 +722,19 @@ export declare const OPERATIONS: readonly [{
636
722
  url: string;
637
723
  };
638
724
  readonly response: import("zod").ZodNever | import("zod").ZodObject<{
725
+ headers: import("zod").ZodOptional<import("zod").ZodArray<import("zod").ZodUnion<readonly [import("zod").ZodObject<{
726
+ name: import("zod").ZodString;
727
+ secret: import("zod").ZodLiteral<false>;
728
+ value: import("zod").ZodString;
729
+ }, import("zod/v4/core").$strict>, import("zod").ZodObject<{
730
+ name: import("zod").ZodString;
731
+ secret: import("zod").ZodLiteral<true>;
732
+ configured: import("zod").ZodLiteral<true>;
733
+ value: import("zod").ZodOptional<import("zod").ZodNever>;
734
+ }, import("zod/v4/core").$strict>, import("zod").ZodObject<{
735
+ name: import("zod").ZodString;
736
+ suppressed: import("zod").ZodLiteral<true>;
737
+ }, import("zod/v4/core").$strict>]>>>;
639
738
  createdAt: import("zod").ZodString;
640
739
  disabledAt: import("zod").ZodOptional<import("zod").ZodString>;
641
740
  environmentKind: import("zod").ZodEnum<{
@@ -668,6 +767,127 @@ export declare const OPERATIONS: readonly [{
668
767
  readonly sessionAuthority: "headers";
669
768
  readonly summary: "" | "Create a callback endpoint";
670
769
  readonly surfaces: readonly ["api", "mock"];
770
+ }, {
771
+ readonly creates: false;
772
+ readonly description: "" | "Finds or creates the callback endpoint at a URL in the caller's project and environment, without returning its signing secret. With no `name`, an existing endpoint that is not disabled at exactly this address is returned unchanged, preferring the one named after its URL; with a `name`, the endpoint must also carry that name. Otherwise one is created under the same rules as endpoints.create — HTTPS on effective port 443, no URL credentials or fragment, resolving only to public unicast addresses — and `created` is true. Optional `headers` apply only to an endpoint this call creates. Sent when the endpoint already exists, they are accepted if they are exactly its ordinary headers — what a retry of the creating call sends — and otherwise refused as `state_conflict` naming it; endpoints.update changes them. A secret value cannot be compared, so a call carrying one is refused for an endpoint that already exists. The result is metadata only: `signingSecret` says that the secret is not returned and where a signed-in member reveals it (`revealUrl`, the endpoint's dashboard page). Every callback is signed with that secret whether or not the receiver checks it. This is the endpoint operation agents use over MCP; endpoints.create, which returns the secret once, is withheld there.";
773
+ readonly example: {
774
+ created?: never;
775
+ createdAt?: never;
776
+ environmentKind?: never;
777
+ id?: never;
778
+ name?: never;
779
+ project?: never;
780
+ signingKeys?: never;
781
+ signingSecret?: never;
782
+ status?: never;
783
+ updatedAt?: never;
784
+ url?: never;
785
+ version?: never;
786
+ } | {
787
+ created: boolean;
788
+ createdAt: string;
789
+ environmentKind: string;
790
+ id: string;
791
+ name: string;
792
+ project: string;
793
+ signingKeys: {
794
+ current: string;
795
+ };
796
+ signingSecret: {
797
+ guidance: string;
798
+ returned: boolean;
799
+ revealUrl: string;
800
+ };
801
+ status: string;
802
+ updatedAt: string;
803
+ url: string;
804
+ version: number;
805
+ };
806
+ readonly id: "endpoints.ensure";
807
+ readonly idempotent: true;
808
+ readonly mcp: {
809
+ readonly destructive: false;
810
+ readonly kind: "tool";
811
+ readonly openWorld: true;
812
+ };
813
+ readonly method: "POST";
814
+ readonly mutates: true;
815
+ readonly path: "/v1/endpoints/ensure";
816
+ readonly principals: readonly ["api-credential", "oauth", "session"];
817
+ readonly problems: readonly ["state_conflict", "invalid_request", "plan_limit_reached", "rate_limited"];
818
+ readonly request: import("zod").ZodObject<{
819
+ headers: import("zod").ZodOptional<import("zod").ZodArray<import("zod").ZodDiscriminatedUnion<[import("zod").ZodObject<{
820
+ action: import("zod").ZodLiteral<"set">;
821
+ name: import("zod").ZodString;
822
+ value: import("zod").ZodString;
823
+ secret: import("zod").ZodOptional<import("zod").ZodBoolean>;
824
+ }, import("zod/v4/core").$strict>, import("zod").ZodObject<{
825
+ action: import("zod").ZodLiteral<"keep">;
826
+ name: import("zod").ZodString;
827
+ }, import("zod/v4/core").$strict>, import("zod").ZodObject<{
828
+ action: import("zod").ZodLiteral<"remove">;
829
+ name: import("zod").ZodString;
830
+ }, import("zod/v4/core").$strict>, import("zod").ZodObject<{
831
+ action: import("zod").ZodLiteral<"suppress">;
832
+ name: import("zod").ZodString;
833
+ }, import("zod/v4/core").$strict>], "action">>>;
834
+ name: import("zod").ZodOptional<import("zod").ZodString>;
835
+ url: import("zod").ZodString;
836
+ }, import("zod/v4/core").$strip>;
837
+ readonly requestExample: {
838
+ url?: never;
839
+ } | {
840
+ url: string;
841
+ };
842
+ readonly response: import("zod").ZodNever | import("zod").ZodObject<{
843
+ headers: import("zod").ZodOptional<import("zod").ZodArray<import("zod").ZodUnion<readonly [import("zod").ZodObject<{
844
+ name: import("zod").ZodString;
845
+ secret: import("zod").ZodLiteral<false>;
846
+ value: import("zod").ZodString;
847
+ }, import("zod/v4/core").$strict>, import("zod").ZodObject<{
848
+ name: import("zod").ZodString;
849
+ secret: import("zod").ZodLiteral<true>;
850
+ configured: import("zod").ZodLiteral<true>;
851
+ value: import("zod").ZodOptional<import("zod").ZodNever>;
852
+ }, import("zod/v4/core").$strict>, import("zod").ZodObject<{
853
+ name: import("zod").ZodString;
854
+ suppressed: import("zod").ZodLiteral<true>;
855
+ }, import("zod/v4/core").$strict>]>>>;
856
+ createdAt: import("zod").ZodString;
857
+ disabledAt: import("zod").ZodOptional<import("zod").ZodString>;
858
+ environmentKind: import("zod").ZodEnum<{
859
+ test: "test";
860
+ live: "live";
861
+ }>;
862
+ id: import("zod").ZodString;
863
+ name: import("zod").ZodOptional<import("zod").ZodString>;
864
+ project: import("zod").ZodString;
865
+ signingKeys: import("zod").ZodObject<{
866
+ current: import("zod").ZodString;
867
+ next: import("zod").ZodOptional<import("zod").ZodObject<{
868
+ acknowledgedAt: import("zod").ZodOptional<import("zod").ZodString>;
869
+ id: import("zod").ZodString;
870
+ overlapEndsAt: import("zod").ZodString;
871
+ }, import("zod/v4/core").$strip>>;
872
+ }, import("zod/v4/core").$strip>;
873
+ status: import("zod").ZodEnum<{
874
+ disabled: "disabled";
875
+ active: "active";
876
+ }>;
877
+ updatedAt: import("zod").ZodString;
878
+ url: import("zod").ZodString;
879
+ version: import("zod").ZodNumber;
880
+ created: import("zod").ZodBoolean;
881
+ signingSecret: import("zod").ZodObject<{
882
+ guidance: import("zod").ZodString;
883
+ returned: import("zod").ZodLiteral<false>;
884
+ revealUrl: import("zod").ZodOptional<import("zod").ZodString>;
885
+ }, import("zod/v4/core").$strip>;
886
+ }, import("zod/v4/core").$strip>;
887
+ readonly scopes: readonly ["endpoints:write"];
888
+ readonly sessionAuthority: "headers";
889
+ readonly summary: "" | "Find or create a callback endpoint by URL";
890
+ readonly surfaces: readonly ["api", "mock"];
671
891
  }, {
672
892
  readonly creates: false;
673
893
  readonly description: "" | "Lists the caller's callback endpoints for exactly its own project and environment. The result is authoritative and metadata-only: no signing secret or sealed key material has a field in this shape.";
@@ -710,6 +930,19 @@ export declare const OPERATIONS: readonly [{
710
930
  }, import("zod/v4/core").$strip>;
711
931
  readonly response: import("zod").ZodNever | import("zod").ZodObject<{
712
932
  data: import("zod").ZodArray<import("zod").ZodObject<{
933
+ headers: import("zod").ZodOptional<import("zod").ZodArray<import("zod").ZodUnion<readonly [import("zod").ZodObject<{
934
+ name: import("zod").ZodString;
935
+ secret: import("zod").ZodLiteral<false>;
936
+ value: import("zod").ZodString;
937
+ }, import("zod/v4/core").$strict>, import("zod").ZodObject<{
938
+ name: import("zod").ZodString;
939
+ secret: import("zod").ZodLiteral<true>;
940
+ configured: import("zod").ZodLiteral<true>;
941
+ value: import("zod").ZodOptional<import("zod").ZodNever>;
942
+ }, import("zod/v4/core").$strict>, import("zod").ZodObject<{
943
+ name: import("zod").ZodString;
944
+ suppressed: import("zod").ZodLiteral<true>;
945
+ }, import("zod/v4/core").$strict>]>>>;
713
946
  createdAt: import("zod").ZodString;
714
947
  disabledAt: import("zod").ZodOptional<import("zod").ZodString>;
715
948
  environmentKind: import("zod").ZodEnum<{
@@ -796,6 +1029,19 @@ export declare const OPERATIONS: readonly [{
796
1029
  readonly principals: readonly ["api-credential", "oauth", "session"];
797
1030
  readonly problems: readonly ["invalid_request", "not_found"];
798
1031
  readonly response: import("zod").ZodNever | import("zod").ZodObject<{
1032
+ headers: import("zod").ZodOptional<import("zod").ZodArray<import("zod").ZodUnion<readonly [import("zod").ZodObject<{
1033
+ name: import("zod").ZodString;
1034
+ secret: import("zod").ZodLiteral<false>;
1035
+ value: import("zod").ZodString;
1036
+ }, import("zod/v4/core").$strict>, import("zod").ZodObject<{
1037
+ name: import("zod").ZodString;
1038
+ secret: import("zod").ZodLiteral<true>;
1039
+ configured: import("zod").ZodLiteral<true>;
1040
+ value: import("zod").ZodOptional<import("zod").ZodNever>;
1041
+ }, import("zod/v4/core").$strict>, import("zod").ZodObject<{
1042
+ name: import("zod").ZodString;
1043
+ suppressed: import("zod").ZodLiteral<true>;
1044
+ }, import("zod/v4/core").$strict>]>>>;
799
1045
  createdAt: import("zod").ZodString;
800
1046
  disabledAt: import("zod").ZodOptional<import("zod").ZodString>;
801
1047
  environmentKind: import("zod").ZodEnum<{
@@ -830,7 +1076,7 @@ export declare const OPERATIONS: readonly [{
830
1076
  ETag: import("zod").ZodString;
831
1077
  }, import("zod/v4/core").$strip>;
832
1078
  readonly creates: false;
833
- readonly description: "" | "Replaces an endpoint's destination after applying the complete URL and DNS policy, and renames it when a name is given. Deliveries go to the new destination from the next one on. Disabled endpoints cannot be updated. Send If-Match with the version the endpoint was read at to be refused rather than overwrite a destination somebody else changed in the meantime.";
1079
+ readonly description: "" | "Replaces an endpoint's destination after applying the complete URL and DNS policy, and renames it when a name is given. Optional `headers` patch endpoint defaults with `set`, `keep`, or `remove`; omitted headers preserve them. A secret value can be retained, replaced (including an empty string), or removed, but cannot be revealed. Header and destination edits apply to newly admitted attempts, including retries; recovery of the same admitted attempt keeps its snapshot. Disabled endpoints cannot be updated. Send If-Match with the version the endpoint was read at to be refused rather than overwrite a destination somebody else changed in the meantime.";
834
1080
  readonly example: {
835
1081
  createdAt?: never;
836
1082
  environmentKind?: never;
@@ -867,6 +1113,21 @@ export declare const OPERATIONS: readonly [{
867
1113
  readonly principals: readonly ["api-credential", "oauth", "session"];
868
1114
  readonly problems: readonly ["invalid_request", "not_found", "rate_limited", "state_conflict", "version_conflict"];
869
1115
  readonly request: import("zod").ZodObject<{
1116
+ headers: import("zod").ZodOptional<import("zod").ZodArray<import("zod").ZodDiscriminatedUnion<[import("zod").ZodObject<{
1117
+ action: import("zod").ZodLiteral<"set">;
1118
+ name: import("zod").ZodString;
1119
+ value: import("zod").ZodString;
1120
+ secret: import("zod").ZodOptional<import("zod").ZodBoolean>;
1121
+ }, import("zod/v4/core").$strict>, import("zod").ZodObject<{
1122
+ action: import("zod").ZodLiteral<"keep">;
1123
+ name: import("zod").ZodString;
1124
+ }, import("zod/v4/core").$strict>, import("zod").ZodObject<{
1125
+ action: import("zod").ZodLiteral<"remove">;
1126
+ name: import("zod").ZodString;
1127
+ }, import("zod/v4/core").$strict>, import("zod").ZodObject<{
1128
+ action: import("zod").ZodLiteral<"suppress">;
1129
+ name: import("zod").ZodString;
1130
+ }, import("zod/v4/core").$strict>], "action">>>;
870
1131
  name: import("zod").ZodOptional<import("zod").ZodString>;
871
1132
  url: import("zod").ZodString;
872
1133
  }, import("zod/v4/core").$strip>;
@@ -879,6 +1140,19 @@ export declare const OPERATIONS: readonly [{
879
1140
  "If-Match": import("zod").ZodOptional<import("zod").ZodString>;
880
1141
  }, import("zod/v4/core").$strip>;
881
1142
  readonly response: import("zod").ZodNever | import("zod").ZodObject<{
1143
+ headers: import("zod").ZodOptional<import("zod").ZodArray<import("zod").ZodUnion<readonly [import("zod").ZodObject<{
1144
+ name: import("zod").ZodString;
1145
+ secret: import("zod").ZodLiteral<false>;
1146
+ value: import("zod").ZodString;
1147
+ }, import("zod/v4/core").$strict>, import("zod").ZodObject<{
1148
+ name: import("zod").ZodString;
1149
+ secret: import("zod").ZodLiteral<true>;
1150
+ configured: import("zod").ZodLiteral<true>;
1151
+ value: import("zod").ZodOptional<import("zod").ZodNever>;
1152
+ }, import("zod/v4/core").$strict>, import("zod").ZodObject<{
1153
+ name: import("zod").ZodString;
1154
+ suppressed: import("zod").ZodLiteral<true>;
1155
+ }, import("zod/v4/core").$strict>]>>>;
882
1156
  createdAt: import("zod").ZodString;
883
1157
  disabledAt: import("zod").ZodOptional<import("zod").ZodString>;
884
1158
  environmentKind: import("zod").ZodEnum<{
@@ -965,6 +1239,19 @@ export declare const OPERATIONS: readonly [{
965
1239
  }, import("zod/v4/core").$strip>;
966
1240
  readonly response: import("zod").ZodNever | import("zod").ZodObject<{
967
1241
  endpoint: import("zod").ZodObject<{
1242
+ headers: import("zod").ZodOptional<import("zod").ZodArray<import("zod").ZodUnion<readonly [import("zod").ZodObject<{
1243
+ name: import("zod").ZodString;
1244
+ secret: import("zod").ZodLiteral<false>;
1245
+ value: import("zod").ZodString;
1246
+ }, import("zod/v4/core").$strict>, import("zod").ZodObject<{
1247
+ name: import("zod").ZodString;
1248
+ secret: import("zod").ZodLiteral<true>;
1249
+ configured: import("zod").ZodLiteral<true>;
1250
+ value: import("zod").ZodOptional<import("zod").ZodNever>;
1251
+ }, import("zod/v4/core").$strict>, import("zod").ZodObject<{
1252
+ name: import("zod").ZodString;
1253
+ suppressed: import("zod").ZodLiteral<true>;
1254
+ }, import("zod/v4/core").$strict>]>>>;
968
1255
  createdAt: import("zod").ZodString;
969
1256
  disabledAt: import("zod").ZodOptional<import("zod").ZodString>;
970
1257
  environmentKind: import("zod").ZodEnum<{
@@ -1047,6 +1334,19 @@ export declare const OPERATIONS: readonly [{
1047
1334
  "If-Match": import("zod").ZodString;
1048
1335
  }, import("zod/v4/core").$strip>;
1049
1336
  readonly response: import("zod").ZodNever | import("zod").ZodObject<{
1337
+ headers: import("zod").ZodOptional<import("zod").ZodArray<import("zod").ZodUnion<readonly [import("zod").ZodObject<{
1338
+ name: import("zod").ZodString;
1339
+ secret: import("zod").ZodLiteral<false>;
1340
+ value: import("zod").ZodString;
1341
+ }, import("zod/v4/core").$strict>, import("zod").ZodObject<{
1342
+ name: import("zod").ZodString;
1343
+ secret: import("zod").ZodLiteral<true>;
1344
+ configured: import("zod").ZodLiteral<true>;
1345
+ value: import("zod").ZodOptional<import("zod").ZodNever>;
1346
+ }, import("zod/v4/core").$strict>, import("zod").ZodObject<{
1347
+ name: import("zod").ZodString;
1348
+ suppressed: import("zod").ZodLiteral<true>;
1349
+ }, import("zod/v4/core").$strict>]>>>;
1050
1350
  createdAt: import("zod").ZodString;
1051
1351
  disabledAt: import("zod").ZodOptional<import("zod").ZodString>;
1052
1352
  environmentKind: import("zod").ZodEnum<{
@@ -1160,6 +1460,19 @@ export declare const OPERATIONS: readonly [{
1160
1460
  readonly principals: readonly ["api-credential", "oauth", "session"];
1161
1461
  readonly problems: readonly ["invalid_request", "not_found"];
1162
1462
  readonly response: import("zod").ZodNever | import("zod").ZodObject<{
1463
+ headers: import("zod").ZodOptional<import("zod").ZodArray<import("zod").ZodUnion<readonly [import("zod").ZodObject<{
1464
+ name: import("zod").ZodString;
1465
+ secret: import("zod").ZodLiteral<false>;
1466
+ value: import("zod").ZodString;
1467
+ }, import("zod/v4/core").$strict>, import("zod").ZodObject<{
1468
+ name: import("zod").ZodString;
1469
+ secret: import("zod").ZodLiteral<true>;
1470
+ configured: import("zod").ZodLiteral<true>;
1471
+ value: import("zod").ZodOptional<import("zod").ZodNever>;
1472
+ }, import("zod/v4/core").$strict>, import("zod").ZodObject<{
1473
+ name: import("zod").ZodString;
1474
+ suppressed: import("zod").ZodLiteral<true>;
1475
+ }, import("zod/v4/core").$strict>]>>>;
1163
1476
  createdAt: import("zod").ZodString;
1164
1477
  disabledAt: import("zod").ZodOptional<import("zod").ZodString>;
1165
1478
  environmentKind: import("zod").ZodEnum<{
@@ -1233,6 +1546,19 @@ export declare const OPERATIONS: readonly [{
1233
1546
  readonly principals: readonly ["api-credential", "oauth", "session"];
1234
1547
  readonly problems: readonly ["invalid_request", "not_found", "state_conflict"];
1235
1548
  readonly response: import("zod").ZodNever | import("zod").ZodObject<{
1549
+ headers: import("zod").ZodOptional<import("zod").ZodArray<import("zod").ZodUnion<readonly [import("zod").ZodObject<{
1550
+ name: import("zod").ZodString;
1551
+ secret: import("zod").ZodLiteral<false>;
1552
+ value: import("zod").ZodString;
1553
+ }, import("zod/v4/core").$strict>, import("zod").ZodObject<{
1554
+ name: import("zod").ZodString;
1555
+ secret: import("zod").ZodLiteral<true>;
1556
+ configured: import("zod").ZodLiteral<true>;
1557
+ value: import("zod").ZodOptional<import("zod").ZodNever>;
1558
+ }, import("zod/v4/core").$strict>, import("zod").ZodObject<{
1559
+ name: import("zod").ZodString;
1560
+ suppressed: import("zod").ZodLiteral<true>;
1561
+ }, import("zod/v4/core").$strict>]>>>;
1236
1562
  createdAt: import("zod").ZodString;
1237
1563
  disabledAt: import("zod").ZodOptional<import("zod").ZodString>;
1238
1564
  environmentKind: import("zod").ZodEnum<{
@@ -2075,6 +2401,7 @@ export declare const OPERATIONS: readonly [{
2075
2401
  }>;
2076
2402
  project: import("zod").ZodString;
2077
2403
  scopes: import("zod").ZodArray<import("zod").ZodEnum<{
2404
+ "members:manage": "members:manage";
2078
2405
  "credentials:administer": "credentials:administer";
2079
2406
  "billing:write": "billing:write";
2080
2407
  "credentials:read": "credentials:read";
@@ -2137,6 +2464,7 @@ export declare const OPERATIONS: readonly [{
2137
2464
  }>;
2138
2465
  project: import("zod").ZodString;
2139
2466
  scopes: import("zod").ZodArray<import("zod").ZodEnum<{
2467
+ "members:manage": "members:manage";
2140
2468
  "credentials:administer": "credentials:administer";
2141
2469
  "billing:write": "billing:write";
2142
2470
  "credentials:read": "credentials:read";
@@ -2180,6 +2508,7 @@ export declare const OPERATIONS: readonly [{
2180
2508
  revokedAt: import("zod").ZodOptional<import("zod").ZodString>;
2181
2509
  supersededBy: import("zod").ZodOptional<import("zod").ZodString>;
2182
2510
  scopes: import("zod").ZodArray<import("zod").ZodEnum<{
2511
+ "members:manage": "members:manage";
2183
2512
  "credentials:administer": "credentials:administer";
2184
2513
  "billing:write": "billing:write";
2185
2514
  "credentials:read": "credentials:read";
@@ -2259,6 +2588,7 @@ export declare const OPERATIONS: readonly [{
2259
2588
  revokedAt: import("zod").ZodOptional<import("zod").ZodString>;
2260
2589
  supersededBy: import("zod").ZodOptional<import("zod").ZodString>;
2261
2590
  scopes: import("zod").ZodArray<import("zod").ZodEnum<{
2591
+ "members:manage": "members:manage";
2262
2592
  "credentials:administer": "credentials:administer";
2263
2593
  "billing:write": "billing:write";
2264
2594
  "credentials:read": "credentials:read";
@@ -2328,6 +2658,7 @@ export declare const OPERATIONS: readonly [{
2328
2658
  endpoint: import("zod").ZodString;
2329
2659
  id: import("zod").ZodString;
2330
2660
  scopes: import("zod").ZodArray<import("zod").ZodEnum<{
2661
+ "members:manage": "members:manage";
2331
2662
  "credentials:administer": "credentials:administer";
2332
2663
  "billing:write": "billing:write";
2333
2664
  "credentials:read": "credentials:read";
@@ -2348,8 +2679,8 @@ export declare const OPERATIONS: readonly [{
2348
2679
  }>>;
2349
2680
  state: import("zod").ZodEnum<{
2350
2681
  revoked: "revoked";
2351
- usable: "usable";
2352
2682
  expired: "expired";
2683
+ usable: "usable";
2353
2684
  }>;
2354
2685
  tools: import("zod").ZodArray<import("zod").ZodString>;
2355
2686
  }, import("zod/v4/core").$strip>;
@@ -2732,6 +3063,7 @@ export declare const OPERATIONS: readonly [{
2732
3063
  }>>;
2733
3064
  revokedAt: import("zod").ZodOptional<import("zod").ZodString>;
2734
3065
  scopes: import("zod").ZodArray<import("zod").ZodEnum<{
3066
+ "members:manage": "members:manage";
2735
3067
  "credentials:administer": "credentials:administer";
2736
3068
  "billing:write": "billing:write";
2737
3069
  "credentials:read": "credentials:read";
@@ -2814,6 +3146,7 @@ export declare const OPERATIONS: readonly [{
2814
3146
  }>>;
2815
3147
  revokedAt: import("zod").ZodOptional<import("zod").ZodString>;
2816
3148
  scopes: import("zod").ZodArray<import("zod").ZodEnum<{
3149
+ "members:manage": "members:manage";
2817
3150
  "credentials:administer": "credentials:administer";
2818
3151
  "billing:write": "billing:write";
2819
3152
  "credentials:read": "credentials:read";
@@ -2907,6 +3240,7 @@ export declare const OPERATIONS: readonly [{
2907
3240
  revokedAt: import("zod").ZodOptional<import("zod").ZodString>;
2908
3241
  supersededBy: import("zod").ZodOptional<import("zod").ZodString>;
2909
3242
  scopes: import("zod").ZodArray<import("zod").ZodEnum<{
3243
+ "members:manage": "members:manage";
2910
3244
  "credentials:administer": "credentials:administer";
2911
3245
  "billing:write": "billing:write";
2912
3246
  "credentials:read": "credentials:read";
@@ -2943,6 +3277,7 @@ export declare const OPERATIONS: readonly [{
2943
3277
  revokedAt: import("zod").ZodOptional<import("zod").ZodString>;
2944
3278
  supersededBy: import("zod").ZodOptional<import("zod").ZodString>;
2945
3279
  scopes: import("zod").ZodArray<import("zod").ZodEnum<{
3280
+ "members:manage": "members:manage";
2946
3281
  "credentials:administer": "credentials:administer";
2947
3282
  "billing:write": "billing:write";
2948
3283
  "credentials:read": "credentials:read";
@@ -3012,6 +3347,7 @@ export declare const OPERATIONS: readonly [{
3012
3347
  revokedAt: import("zod").ZodOptional<import("zod").ZodString>;
3013
3348
  supersededBy: import("zod").ZodOptional<import("zod").ZodString>;
3014
3349
  scopes: import("zod").ZodArray<import("zod").ZodEnum<{
3350
+ "members:manage": "members:manage";
3015
3351
  "credentials:administer": "credentials:administer";
3016
3352
  "billing:write": "billing:write";
3017
3353
  "credentials:read": "credentials:read";
@@ -3046,7 +3382,7 @@ export declare const OPERATIONS: readonly [{
3046
3382
  "Idempotency-Replayed": import("zod").ZodOptional<import("zod").ZodLiteral<"true">>;
3047
3383
  }, import("zod/v4/core").$strip>;
3048
3384
  readonly creates: true;
3049
- readonly description: "" | "Creates a schedule and returns it together with its first planned occurrence. Give exactly one of `at`, `delaySeconds`, `everySeconds` and `cron`. An optional `partitionKey` selects a fairness lane inside this project and environment; it is fixed after create. Add a verified `endpoint` to deliver each occurrence there; optional JSON `data` is encrypted before PostgreSQL persistence, placed in the signed callback, and returned as given by a schedule read. `at` and `delaySeconds` fire once; a delay is converted to an absolute instant when the request is accepted, so a schedule created either way reads back the same afterwards. `everySeconds` is a fixed duration and its first occurrence falls one interval after acceptance — it stays the same length across a daylight-saving change, and takes no timezone for that reason. `cron` is a wall clock: it is read against the IANA `timeZone` sent with it, `UTC` when none is, and the first occurrence is the first instant the expression names after acceptance. Where the clocks go forward and the wall time named does not exist that day, the occurrence falls at the first instant after the gap; where they go back and it happens twice, it falls once, at the earlier of the two. A recurring schedule is materialized one occurrence at a time: the next one is planned once the current one is due, so a read always shows one occurrence still to come. `lateness.policy` decides what happens when an occurrence reaches its first attempt after its planned instant: `skipAhead` never carries a recurring arrival across its next scheduled instant (and a shorter custom window may retire it earlier), while `catchUp` admits one arrival within `maxStalenessSeconds` even after later recurrence instants passed. A one-shot has no next recurrence, so either explicit policy uses its window and the default is `catchUp` with 24 hours; recurring schedules default to `skipAhead`, and a `catchUp` without an override has a one-interval window. A retry already in progress is exempt because it arrived and failed; its retry and give-up policy still decide the outcome. The organization, project and environment come from the verified principal; a body cannot name them, and the endpoint must belong to the same tuple, so a credential issued for one project can only ever create schedules in that project. Send an `Idempotency-Key` to make a retry safe: the identical request returns the schedule that key already created, marked `Idempotency-Replayed: true`, and creates nothing further; the same key with a different request is refused `idempotency_key_reused`. A replay reports the schedule **as it stands now**, not a frozen copy of the first response — if it was paused in between, the replay says so.";
3385
+ readonly description: "" | "Creates a schedule and returns it together with its first planned occurrence. Give exactly one of `at`, `delaySeconds`, `everySeconds` and `cron`. An optional `partitionKey` selects a fairness lane inside this project and environment; it is fixed after create. Add a verified `endpoint` to deliver each occurrence there. Instead of `endpoint`, give a `url`: the service uses this project and environment's existing endpoint at exactly that address, or creates one silently. Its signing secret is never returned; the response's `endpointSigningSecret` says where a signed-in member reveals it. Reusing an endpoint needs only `schedules:write`; creating one also needs `endpoints:write`, and without it the request is refused as `scope_missing`. Optional JSON `data` is encrypted before PostgreSQL persistence, placed in the signed callback, and returned as given by a schedule read. Optional `http` selects POST (default), PUT, or bodyless GET and schedule header overrides. Omitted HTTP settings preserve the signed structured envelope; `body: { mode: 'json', value: ... }` sends that JSON directly without interpolation. Ordinary headers remain readable and secret values are encrypted and write-only. Schedule headers override endpoint defaults case-insensitively, with `suppress` to omit an inherited header and `remove` to resume inheritance. Product signing, content and transport headers are reserved. Raw JSON and GET carry asynchronous completion details in reserved Callback-Completion headers. `at` and `delaySeconds` fire once; a delay is converted to an absolute instant when the request is accepted, so a schedule created either way reads back the same afterwards. `everySeconds` is a fixed duration and its first occurrence falls one interval after acceptance — it stays the same length across a daylight-saving change, and takes no timezone for that reason. `cron` is a wall clock: it is read against the IANA `timeZone` sent with it, `UTC` when none is, and the first occurrence is the first instant the expression names after acceptance. Where the clocks go forward and the wall time named does not exist that day, the occurrence falls at the first instant after the gap; where they go back and it happens twice, it falls once, at the earlier of the two. A recurring schedule is materialized one occurrence at a time: the next one is planned once the current one is due, so a read always shows one occurrence still to come. `lateness.policy` decides what happens when an occurrence reaches its first attempt after its planned instant: `skipAhead` never carries a recurring arrival across its next scheduled instant (and a shorter custom window may retire it earlier), while `catchUp` admits one arrival within `maxStalenessSeconds` even after later recurrence instants passed. A one-shot has no next recurrence, so either explicit policy uses its window and the default is `catchUp` with 24 hours; recurring schedules default to `skipAhead`, and a `catchUp` without an override has a one-interval window. A retry already in progress is exempt because it arrived and failed; its retry and give-up policy still decide the outcome. The organization, project and environment come from the verified principal; a body cannot name them, and the endpoint must belong to the same tuple, so a credential issued for one project can only ever create schedules in that project. Send an `Idempotency-Key` to make a retry safe: the identical request returns the schedule that key already created, marked `Idempotency-Replayed: true`, and creates nothing further; the same key with a different request is refused `idempotency_key_reused`. A replay reports the schedule **as it stands now**, not a frozen copy of the first response — if it was paused in between, the replay says so.";
3050
3386
  readonly example: {
3051
3387
  occurrence?: never;
3052
3388
  schedule?: never;
@@ -3088,9 +3424,39 @@ export declare const OPERATIONS: readonly [{
3088
3424
  readonly method: "POST";
3089
3425
  readonly mutates: true;
3090
3426
  readonly path: "/v1/schedules";
3427
+ readonly conditionalScopes: readonly ["endpoints:write"];
3428
+ readonly conditionalScopesWhen: "the request names a `url` this project and environment has no endpoint at yet";
3091
3429
  readonly principals: readonly ["api-credential", "oauth", "session"];
3092
- readonly problems: readonly ["idempotency_key_reused", "invalid_request", "not_found", "plan_limit_reached", "service_unavailable", "state_conflict"];
3430
+ readonly problems: readonly ["idempotency_key_reused", "invalid_request", "not_found", "plan_limit_reached", "rate_limited", "scope_missing", "service_unavailable", "state_conflict"];
3093
3431
  readonly request: import("zod").ZodObject<{
3432
+ http: import("zod").ZodOptional<import("zod").ZodObject<{
3433
+ method: import("zod").ZodOptional<import("zod").ZodEnum<{
3434
+ POST: "POST";
3435
+ PUT: "PUT";
3436
+ GET: "GET";
3437
+ }>>;
3438
+ body: import("zod").ZodOptional<import("zod").ZodDiscriminatedUnion<[import("zod").ZodObject<{
3439
+ mode: import("zod").ZodLiteral<"envelope">;
3440
+ }, import("zod/v4/core").$strict>, import("zod").ZodObject<{
3441
+ mode: import("zod").ZodLiteral<"json">;
3442
+ value: import("zod").ZodJSONSchema;
3443
+ }, import("zod/v4/core").$strict>], "mode">>;
3444
+ headers: import("zod").ZodOptional<import("zod").ZodArray<import("zod").ZodDiscriminatedUnion<[import("zod").ZodObject<{
3445
+ action: import("zod").ZodLiteral<"set">;
3446
+ name: import("zod").ZodString;
3447
+ value: import("zod").ZodString;
3448
+ secret: import("zod").ZodOptional<import("zod").ZodBoolean>;
3449
+ }, import("zod/v4/core").$strict>, import("zod").ZodObject<{
3450
+ action: import("zod").ZodLiteral<"keep">;
3451
+ name: import("zod").ZodString;
3452
+ }, import("zod/v4/core").$strict>, import("zod").ZodObject<{
3453
+ action: import("zod").ZodLiteral<"remove">;
3454
+ name: import("zod").ZodString;
3455
+ }, import("zod/v4/core").$strict>, import("zod").ZodObject<{
3456
+ action: import("zod").ZodLiteral<"suppress">;
3457
+ name: import("zod").ZodString;
3458
+ }, import("zod/v4/core").$strict>], "action">>>;
3459
+ }, import("zod/v4/core").$strict>>;
3094
3460
  at: import("zod").ZodOptional<import("zod").ZodString>;
3095
3461
  cron: import("zod").ZodOptional<import("zod").ZodString>;
3096
3462
  data: import("zod").ZodOptional<import("zod").ZodJSONSchema>;
@@ -3108,6 +3474,7 @@ export declare const OPERATIONS: readonly [{
3108
3474
  }, import("zod/v4/core").$strict>>;
3109
3475
  everySeconds: import("zod").ZodOptional<import("zod").ZodNumber>;
3110
3476
  endpoint: import("zod").ZodOptional<import("zod").ZodString>;
3477
+ url: import("zod").ZodOptional<import("zod").ZodString>;
3111
3478
  latencyClass: import("zod").ZodOptional<import("zod").ZodEnum<{
3112
3479
  realtime: "realtime";
3113
3480
  bulk: "bulk";
@@ -3146,7 +3513,7 @@ export declare const OPERATIONS: readonly [{
3146
3513
  readonly requestHeaders: import("zod").ZodObject<{
3147
3514
  "Idempotency-Key": import("zod").ZodOptional<import("zod").ZodString>;
3148
3515
  }, import("zod/v4/core").$strip>;
3149
- readonly response: import("zod").ZodObject<{
3516
+ readonly response: import("zod").ZodNever | import("zod").ZodObject<{
3150
3517
  occurrence: import("zod").ZodObject<{
3151
3518
  generation: import("zod").ZodNumber;
3152
3519
  id: import("zod").ZodString;
@@ -3177,6 +3544,34 @@ export declare const OPERATIONS: readonly [{
3177
3544
  attemptCount: import("zod").ZodNumber;
3178
3545
  }, import("zod/v4/core").$strip>;
3179
3546
  schedule: import("zod").ZodObject<{
3547
+ http: import("zod").ZodOptional<import("zod").ZodObject<{
3548
+ method: import("zod").ZodEnum<{
3549
+ POST: "POST";
3550
+ PUT: "PUT";
3551
+ GET: "GET";
3552
+ }>;
3553
+ body: import("zod").ZodDiscriminatedUnion<[import("zod").ZodObject<{
3554
+ mode: import("zod").ZodLiteral<"envelope">;
3555
+ }, import("zod/v4/core").$strict>, import("zod").ZodObject<{
3556
+ mode: import("zod").ZodLiteral<"none">;
3557
+ }, import("zod/v4/core").$strict>, import("zod").ZodObject<{
3558
+ mode: import("zod").ZodLiteral<"json">;
3559
+ value: import("zod").ZodOptional<import("zod").ZodJSONSchema>;
3560
+ }, import("zod/v4/core").$strict>], "mode">;
3561
+ headers: import("zod").ZodArray<import("zod").ZodUnion<readonly [import("zod").ZodObject<{
3562
+ name: import("zod").ZodString;
3563
+ secret: import("zod").ZodLiteral<false>;
3564
+ value: import("zod").ZodString;
3565
+ }, import("zod/v4/core").$strict>, import("zod").ZodObject<{
3566
+ name: import("zod").ZodString;
3567
+ secret: import("zod").ZodLiteral<true>;
3568
+ configured: import("zod").ZodLiteral<true>;
3569
+ value: import("zod").ZodOptional<import("zod").ZodNever>;
3570
+ }, import("zod/v4/core").$strict>, import("zod").ZodObject<{
3571
+ name: import("zod").ZodString;
3572
+ suppressed: import("zod").ZodLiteral<true>;
3573
+ }, import("zod/v4/core").$strict>]>>;
3574
+ }, import("zod/v4/core").$strict>>;
3180
3575
  archivedAt: import("zod").ZodOptional<import("zod").ZodString>;
3181
3576
  data: import("zod").ZodOptional<import("zod").ZodJSONSchema>;
3182
3577
  createdAt: import("zod").ZodString;
@@ -3228,7 +3623,12 @@ export declare const OPERATIONS: readonly [{
3228
3623
  updatedAt: import("zod").ZodString;
3229
3624
  version: import("zod").ZodNumber;
3230
3625
  }, import("zod/v4/core").$strip>;
3231
- }, import("zod/v4/core").$strip> | import("zod").ZodNever;
3626
+ endpointSigningSecret: import("zod").ZodOptional<import("zod").ZodObject<{
3627
+ guidance: import("zod").ZodString;
3628
+ returned: import("zod").ZodLiteral<false>;
3629
+ revealUrl: import("zod").ZodOptional<import("zod").ZodString>;
3630
+ }, import("zod/v4/core").$strip>>;
3631
+ }, import("zod/v4/core").$strip>;
3232
3632
  }, {
3233
3633
  readonly scopes: readonly ["schedules:read"];
3234
3634
  readonly sessionAuthority: "headers";
@@ -3238,7 +3638,7 @@ export declare const OPERATIONS: readonly [{
3238
3638
  ETag: import("zod").ZodString;
3239
3639
  }, import("zod/v4/core").$strip>;
3240
3640
  readonly creates: false;
3241
- readonly description: "" | "Reads one schedule and its next occurrence from the partition that owns it. A schedule belonging to another organization, project or environment answers not_found rather than a refusal that would confirm it exists. The response carries the schedule's version as a strong ETag; send it back in `If-Match` to make a later write conditional on nothing having changed in between. The response carries the schedule's `data` when it has one, exactly as it was given; the listing leaves it off.";
3641
+ readonly description: "" | "Reads one schedule and its next occurrence from the partition that owns it. A schedule belonging to another organization, project or environment answers not_found rather than a refusal that would confirm it exists. The response carries the schedule's version as a strong ETag; send it back in `If-Match` to make a later write conditional on nothing having changed in between. The response carries the schedule's `data` when it has one, exactly as it was given; the listing leaves it off. Detail reads also include the custom JSON body; listings and mutation responses omit its content. HTTP settings expose ordinary values and configured secret markers, never secret values.";
3242
3642
  readonly example: {
3243
3643
  occurrence?: never;
3244
3644
  schedule?: never;
@@ -3285,7 +3685,7 @@ export declare const OPERATIONS: readonly [{
3285
3685
  readonly path: "/v1/schedules/{scheduleId}";
3286
3686
  readonly principals: readonly ["api-credential", "oauth", "session"];
3287
3687
  readonly problems: readonly ["invalid_request", "not_found"];
3288
- readonly response: import("zod").ZodObject<{
3688
+ readonly response: import("zod").ZodNever | import("zod").ZodObject<{
3289
3689
  occurrence: import("zod").ZodObject<{
3290
3690
  generation: import("zod").ZodNumber;
3291
3691
  id: import("zod").ZodString;
@@ -3316,6 +3716,34 @@ export declare const OPERATIONS: readonly [{
3316
3716
  attemptCount: import("zod").ZodNumber;
3317
3717
  }, import("zod/v4/core").$strip>;
3318
3718
  schedule: import("zod").ZodObject<{
3719
+ http: import("zod").ZodOptional<import("zod").ZodObject<{
3720
+ method: import("zod").ZodEnum<{
3721
+ POST: "POST";
3722
+ PUT: "PUT";
3723
+ GET: "GET";
3724
+ }>;
3725
+ body: import("zod").ZodDiscriminatedUnion<[import("zod").ZodObject<{
3726
+ mode: import("zod").ZodLiteral<"envelope">;
3727
+ }, import("zod/v4/core").$strict>, import("zod").ZodObject<{
3728
+ mode: import("zod").ZodLiteral<"none">;
3729
+ }, import("zod/v4/core").$strict>, import("zod").ZodObject<{
3730
+ mode: import("zod").ZodLiteral<"json">;
3731
+ value: import("zod").ZodOptional<import("zod").ZodJSONSchema>;
3732
+ }, import("zod/v4/core").$strict>], "mode">;
3733
+ headers: import("zod").ZodArray<import("zod").ZodUnion<readonly [import("zod").ZodObject<{
3734
+ name: import("zod").ZodString;
3735
+ secret: import("zod").ZodLiteral<false>;
3736
+ value: import("zod").ZodString;
3737
+ }, import("zod/v4/core").$strict>, import("zod").ZodObject<{
3738
+ name: import("zod").ZodString;
3739
+ secret: import("zod").ZodLiteral<true>;
3740
+ configured: import("zod").ZodLiteral<true>;
3741
+ value: import("zod").ZodOptional<import("zod").ZodNever>;
3742
+ }, import("zod/v4/core").$strict>, import("zod").ZodObject<{
3743
+ name: import("zod").ZodString;
3744
+ suppressed: import("zod").ZodLiteral<true>;
3745
+ }, import("zod/v4/core").$strict>]>>;
3746
+ }, import("zod/v4/core").$strict>>;
3319
3747
  archivedAt: import("zod").ZodOptional<import("zod").ZodString>;
3320
3748
  data: import("zod").ZodOptional<import("zod").ZodJSONSchema>;
3321
3749
  createdAt: import("zod").ZodString;
@@ -3367,7 +3795,7 @@ export declare const OPERATIONS: readonly [{
3367
3795
  updatedAt: import("zod").ZodString;
3368
3796
  version: import("zod").ZodNumber;
3369
3797
  }, import("zod/v4/core").$strip>;
3370
- }, import("zod/v4/core").$strip> | import("zod").ZodNever;
3798
+ }, import("zod/v4/core").$strip>;
3371
3799
  }, {
3372
3800
  readonly creates: false;
3373
3801
  readonly description: "" | "Lists the caller's own schedules, oldest first, one page at a time. Archived schedules are left out: archiving is how a schedule leaves the working set, and a listing that still carried them would make the operation pointless. Give `endpoint` to keep the page to the schedules that deliver to that endpoint — the way back from a destination to everything pointed at it, which is what somebody who disabled or is about to move an endpoint needs to see. Items are schedules rather than schedules-with-occurrences, because a cross-partition listing is served from a projection that holds a summary; read a schedule to get its authoritative next occurrence. Every page states whether it is authoritative or projected.";
@@ -3421,8 +3849,36 @@ export declare const OPERATIONS: readonly [{
3421
3849
  due: "due";
3422
3850
  }>>;
3423
3851
  }, import("zod/v4/core").$strip>;
3424
- readonly response: import("zod").ZodObject<{
3852
+ readonly response: import("zod").ZodNever | import("zod").ZodObject<{
3425
3853
  data: import("zod").ZodArray<import("zod").ZodObject<{
3854
+ http: import("zod").ZodOptional<import("zod").ZodObject<{
3855
+ method: import("zod").ZodEnum<{
3856
+ POST: "POST";
3857
+ PUT: "PUT";
3858
+ GET: "GET";
3859
+ }>;
3860
+ body: import("zod").ZodDiscriminatedUnion<[import("zod").ZodObject<{
3861
+ mode: import("zod").ZodLiteral<"envelope">;
3862
+ }, import("zod/v4/core").$strict>, import("zod").ZodObject<{
3863
+ mode: import("zod").ZodLiteral<"none">;
3864
+ }, import("zod/v4/core").$strict>, import("zod").ZodObject<{
3865
+ mode: import("zod").ZodLiteral<"json">;
3866
+ value: import("zod").ZodOptional<import("zod").ZodJSONSchema>;
3867
+ }, import("zod/v4/core").$strict>], "mode">;
3868
+ headers: import("zod").ZodArray<import("zod").ZodUnion<readonly [import("zod").ZodObject<{
3869
+ name: import("zod").ZodString;
3870
+ secret: import("zod").ZodLiteral<false>;
3871
+ value: import("zod").ZodString;
3872
+ }, import("zod/v4/core").$strict>, import("zod").ZodObject<{
3873
+ name: import("zod").ZodString;
3874
+ secret: import("zod").ZodLiteral<true>;
3875
+ configured: import("zod").ZodLiteral<true>;
3876
+ value: import("zod").ZodOptional<import("zod").ZodNever>;
3877
+ }, import("zod/v4/core").$strict>, import("zod").ZodObject<{
3878
+ name: import("zod").ZodString;
3879
+ suppressed: import("zod").ZodLiteral<true>;
3880
+ }, import("zod/v4/core").$strict>]>>;
3881
+ }, import("zod/v4/core").$strict>>;
3426
3882
  archivedAt: import("zod").ZodOptional<import("zod").ZodString>;
3427
3883
  data: import("zod").ZodOptional<import("zod").ZodJSONSchema>;
3428
3884
  createdAt: import("zod").ZodString;
@@ -3482,7 +3938,7 @@ export declare const OPERATIONS: readonly [{
3482
3938
  lagSeconds: import("zod").ZodNumber;
3483
3939
  }, import("zod/v4/core").$strip>], "kind">;
3484
3940
  nextCursor: import("zod").ZodOptional<import("zod").ZodString>;
3485
- }, import("zod/v4/core").$strip> | import("zod").ZodNever;
3941
+ }, import("zod/v4/core").$strip>;
3486
3942
  readonly scopes: readonly ["schedules:read"];
3487
3943
  readonly sessionAuthority: "headers";
3488
3944
  readonly summary: "" | "List schedules";
@@ -4966,7 +5422,7 @@ export declare const OPERATIONS: readonly [{
4966
5422
  readonly path: "/v1/limits";
4967
5423
  readonly principals: readonly ["api-credential", "oauth", "session"];
4968
5424
  readonly problems: readonly ["service_unavailable"];
4969
- readonly response: import("zod").ZodObject<{
5425
+ readonly response: import("zod").ZodNever | import("zod").ZodObject<{
4970
5426
  limits: import("zod").ZodObject<{
4971
5427
  inlinePayloadBytes: import("zod").ZodNumber;
4972
5428
  partitionKeyCeiling: import("zod").ZodOptional<import("zod").ZodNumber>;
@@ -5003,7 +5459,7 @@ export declare const OPERATIONS: readonly [{
5003
5459
  global: import("zod").ZodNumber;
5004
5460
  organization: import("zod").ZodNumber;
5005
5461
  }, import("zod/v4/core").$strict>;
5006
- }, import("zod/v4/core").$strict> | import("zod").ZodNever;
5462
+ }, import("zod/v4/core").$strict>;
5007
5463
  readonly scopes: readonly ["schedules:read"];
5008
5464
  readonly sessionAuthority: "headers";
5009
5465
  readonly summary: "" | "Read effective customer limits";
@@ -5291,7 +5747,7 @@ export declare const OPERATIONS: readonly [{
5291
5747
  newest: "newest";
5292
5748
  }>>;
5293
5749
  }, import("zod/v4/core").$strip>;
5294
- readonly response: import("zod").ZodObject<{
5750
+ readonly response: import("zod").ZodNever | import("zod").ZodObject<{
5295
5751
  data: import("zod").ZodArray<import("zod").ZodObject<{
5296
5752
  generation: import("zod").ZodNumber;
5297
5753
  id: import("zod").ZodString;
@@ -5325,7 +5781,7 @@ export declare const OPERATIONS: readonly [{
5325
5781
  freshness: import("zod").ZodObject<{
5326
5782
  kind: import("zod").ZodLiteral<"authoritative">;
5327
5783
  }, import("zod/v4/core").$strip>;
5328
- }, import("zod/v4/core").$strip> | import("zod").ZodNever;
5784
+ }, import("zod/v4/core").$strip>;
5329
5785
  readonly scopes: readonly ["occurrences:read"];
5330
5786
  readonly sessionAuthority: "headers";
5331
5787
  readonly summary: "" | "List retained occurrences";
@@ -5386,7 +5842,7 @@ export declare const OPERATIONS: readonly [{
5386
5842
  schedule: import("zod").ZodOptional<import("zod").ZodString>;
5387
5843
  to: import("zod").ZodOptional<import("zod").ZodString>;
5388
5844
  }, import("zod/v4/core").$strip>;
5389
- readonly response: import("zod").ZodObject<{
5845
+ readonly response: import("zod").ZodNever | import("zod").ZodObject<{
5390
5846
  data: import("zod").ZodArray<import("zod").ZodObject<{
5391
5847
  generation: import("zod").ZodNumber;
5392
5848
  id: import("zod").ZodString;
@@ -5423,7 +5879,7 @@ export declare const OPERATIONS: readonly [{
5423
5879
  retention: import("zod").ZodObject<{
5424
5880
  from: import("zod").ZodString;
5425
5881
  }, import("zod/v4/core").$strip>;
5426
- }, import("zod/v4/core").$strip> | import("zod").ZodNever;
5882
+ }, import("zod/v4/core").$strip>;
5427
5883
  readonly scopes: readonly ["occurrences:read"];
5428
5884
  readonly sessionAuthority: "headers";
5429
5885
  readonly summary: "" | "List project executions";
@@ -5465,7 +5921,7 @@ export declare const OPERATIONS: readonly [{
5465
5921
  readonly path: "/v1/schedules/{scheduleId}/occurrences/{occurrenceId}";
5466
5922
  readonly principals: readonly ["api-credential", "oauth", "session"];
5467
5923
  readonly problems: readonly ["invalid_request", "not_found"];
5468
- readonly response: import("zod").ZodObject<{
5924
+ readonly response: import("zod").ZodNever | import("zod").ZodObject<{
5469
5925
  freshness: import("zod").ZodObject<{
5470
5926
  kind: import("zod").ZodLiteral<"authoritative">;
5471
5927
  }, import("zod/v4/core").$strip>;
@@ -5498,7 +5954,7 @@ export declare const OPERATIONS: readonly [{
5498
5954
  timingPolicyVersion: import("zod").ZodOptional<import("zod").ZodString>;
5499
5955
  attemptCount: import("zod").ZodNumber;
5500
5956
  }, import("zod/v4/core").$strip>;
5501
- }, import("zod/v4/core").$strip> | import("zod").ZodNever;
5957
+ }, import("zod/v4/core").$strip>;
5502
5958
  readonly scopes: readonly ["occurrences:read"];
5503
5959
  readonly sessionAuthority: "headers";
5504
5960
  readonly summary: "" | "Read an occurrence";
@@ -5554,7 +6010,7 @@ export declare const OPERATIONS: readonly [{
5554
6010
  cursor: import("zod").ZodOptional<import("zod").ZodString>;
5555
6011
  limit: import("zod").ZodDefault<import("zod").ZodNumber>;
5556
6012
  }, import("zod/v4/core").$strip>;
5557
- readonly response: import("zod").ZodObject<{
6013
+ readonly response: import("zod").ZodNever | import("zod").ZodObject<{
5558
6014
  data: import("zod").ZodArray<import("zod").ZodObject<{
5559
6015
  id: import("zod").ZodString;
5560
6016
  localReceiptRecoveries: import("zod").ZodOptional<import("zod").ZodInt>;
@@ -5625,7 +6081,7 @@ export declare const OPERATIONS: readonly [{
5625
6081
  freshness: import("zod").ZodObject<{
5626
6082
  kind: import("zod").ZodLiteral<"authoritative">;
5627
6083
  }, import("zod/v4/core").$strip>;
5628
- }, import("zod/v4/core").$strip> | import("zod").ZodNever;
6084
+ }, import("zod/v4/core").$strip>;
5629
6085
  readonly scopes: readonly ["occurrences:read"];
5630
6086
  readonly sessionAuthority: "headers";
5631
6087
  readonly summary: "" | "List delivery attempts";
@@ -5674,7 +6130,7 @@ export declare const OPERATIONS: readonly [{
5674
6130
  readonly path: "/v1/schedules/{scheduleId}/occurrences/{occurrenceId}/attempts/{attemptId}";
5675
6131
  readonly principals: readonly ["api-credential", "oauth", "session"];
5676
6132
  readonly problems: readonly ["invalid_request", "not_found"];
5677
- readonly response: import("zod").ZodObject<{
6133
+ readonly response: import("zod").ZodNever | import("zod").ZodObject<{
5678
6134
  attempt: import("zod").ZodObject<{
5679
6135
  id: import("zod").ZodString;
5680
6136
  localReceiptRecoveries: import("zod").ZodOptional<import("zod").ZodInt>;
@@ -5744,7 +6200,7 @@ export declare const OPERATIONS: readonly [{
5744
6200
  freshness: import("zod").ZodObject<{
5745
6201
  kind: import("zod").ZodLiteral<"authoritative">;
5746
6202
  }, import("zod/v4/core").$strip>;
5747
- }, import("zod/v4/core").$strip> | import("zod").ZodNever;
6203
+ }, import("zod/v4/core").$strip>;
5748
6204
  readonly scopes: readonly ["occurrences:read"];
5749
6205
  readonly sessionAuthority: "headers";
5750
6206
  readonly summary: "" | "Read a delivery attempt";
@@ -5795,7 +6251,7 @@ export declare const OPERATIONS: readonly [{
5795
6251
  readonly requestHeaders: import("zod").ZodObject<{
5796
6252
  "Idempotency-Key": import("zod").ZodString;
5797
6253
  }, import("zod/v4/core").$strip>;
5798
- readonly response: import("zod").ZodObject<{
6254
+ readonly response: import("zod").ZodNever | import("zod").ZodObject<{
5799
6255
  attempt: import("zod").ZodObject<{
5800
6256
  id: import("zod").ZodString;
5801
6257
  localReceiptRecoveries: import("zod").ZodOptional<import("zod").ZodInt>;
@@ -5865,7 +6321,7 @@ export declare const OPERATIONS: readonly [{
5865
6321
  freshness: import("zod").ZodObject<{
5866
6322
  kind: import("zod").ZodLiteral<"authoritative">;
5867
6323
  }, import("zod/v4/core").$strip>;
5868
- }, import("zod/v4/core").$strip> | import("zod").ZodNever;
6324
+ }, import("zod/v4/core").$strip>;
5869
6325
  }, {
5870
6326
  readonly scopes: readonly ["schedules:write"];
5871
6327
  readonly sessionAuthority: "headers";
@@ -5875,7 +6331,7 @@ export declare const OPERATIONS: readonly [{
5875
6331
  ETag: import("zod").ZodString;
5876
6332
  }, import("zod/v4/core").$strip>;
5877
6333
  readonly creates: false;
5878
- readonly description: "" | "Replaces a schedule's definition, starting a new generation. Takes the same four ways of saying when as a create, so a one-shot can be replaced by a recurring definition and the other way round. An omitted callback endpoint/data pair preserves the stored callback; sending `data` alone replaces the encrypted data for the current endpoint, and sending `endpoint` selects a verified endpoint in the same authority tuple. The occurrence planned under the old definition is settled `skipped_stale` and can never fire unless it was already in flight, in which case its immutable attempt is allowed to settle honestly; a fresh occurrence is planned under the new definition, and the old definition's series stops advancing. `lateness` is resolved afresh against the replacement recurrence: omit it for that kind's default, or state `skipAhead`, `catchUp`, and an optional `maxStalenessSeconds` override. The policy applies only before an occurrence's first attempt; a retry already in progress remains on its retry and give-up ladder. Send `If-Match` with the version you read to make this conditional; without it the replace is unconditional and the last writer wins. A cancelled or completed schedule cannot be replaced. `partitionKey` is fixed when the schedule is created: omit it to preserve the stored value or echo that exact value in a GET → modify → PUT flow. Adding, changing, or clearing it is refused as `invalid_request` with `/partitionKey` identified. `latencyClass` remains derived from the replacement recurrence when the caller omits it.";
6334
+ readonly description: "" | "Replaces a schedule's definition, starting a new generation. Takes the same four ways of saying when as a create, so a one-shot can be replaced by a recurring definition and the other way round. An omitted callback endpoint/data pair preserves the stored callback; sending `data` alone replaces the encrypted data for the current endpoint, and sending `endpoint` selects a verified endpoint in the same authority tuple. Sending `url` instead selects the endpoint at that address in the same tuple, creating one silently when there is none; creating needs `endpoints:write` as well, and the response's `endpointSigningSecret` says where its signing secret is revealed. Omitted `http` preserves HTTP settings. Its headers are a patch: `set` replaces a value, `keep` retains a configured value, `suppress` omits an endpoint default, and `remove` resumes inheritance. Explicit GET with no body clears a saved custom template; POST/PUT with `body: { mode: 'envelope' }` restores the structured callback. The occurrence planned under the old definition is settled `skipped_stale` and can never fire unless it was already in flight, in which case its immutable attempt is allowed to settle honestly; a fresh occurrence is planned under the new definition, and the old definition's series stops advancing. `lateness` is resolved afresh against the replacement recurrence: omit it for that kind's default, or state `skipAhead`, `catchUp`, and an optional `maxStalenessSeconds` override. The policy applies only before an occurrence's first attempt; a retry already in progress remains on its retry and give-up ladder. Send `If-Match` with the version you read to make this conditional; without it the replace is unconditional and the last writer wins. A cancelled or completed schedule cannot be replaced. `partitionKey` is fixed when the schedule is created: omit it to preserve the stored value or echo that exact value in a GET → modify → PUT flow. Adding, changing, or clearing it is refused as `invalid_request` with `/partitionKey` identified. `latencyClass` remains derived from the replacement recurrence when the caller omits it.";
5879
6335
  readonly example: {
5880
6336
  occurrence?: never;
5881
6337
  schedule?: never;
@@ -5917,9 +6373,39 @@ export declare const OPERATIONS: readonly [{
5917
6373
  readonly method: "PUT";
5918
6374
  readonly mutates: true;
5919
6375
  readonly path: "/v1/schedules/{scheduleId}";
6376
+ readonly conditionalScopes: readonly ["endpoints:write"];
6377
+ readonly conditionalScopesWhen: "the request names a `url` this project and environment has no endpoint at yet";
5920
6378
  readonly principals: readonly ["api-credential", "oauth", "session"];
5921
- readonly problems: readonly ["invalid_request", "not_found", "plan_limit_reached", "service_unavailable", "state_conflict", "version_conflict"];
6379
+ readonly problems: readonly ["invalid_request", "not_found", "plan_limit_reached", "rate_limited", "scope_missing", "service_unavailable", "state_conflict", "version_conflict"];
5922
6380
  readonly request: import("zod").ZodObject<{
6381
+ http: import("zod").ZodOptional<import("zod").ZodObject<{
6382
+ method: import("zod").ZodOptional<import("zod").ZodEnum<{
6383
+ POST: "POST";
6384
+ PUT: "PUT";
6385
+ GET: "GET";
6386
+ }>>;
6387
+ body: import("zod").ZodOptional<import("zod").ZodDiscriminatedUnion<[import("zod").ZodObject<{
6388
+ mode: import("zod").ZodLiteral<"envelope">;
6389
+ }, import("zod/v4/core").$strict>, import("zod").ZodObject<{
6390
+ mode: import("zod").ZodLiteral<"json">;
6391
+ value: import("zod").ZodJSONSchema;
6392
+ }, import("zod/v4/core").$strict>], "mode">>;
6393
+ headers: import("zod").ZodOptional<import("zod").ZodArray<import("zod").ZodDiscriminatedUnion<[import("zod").ZodObject<{
6394
+ action: import("zod").ZodLiteral<"set">;
6395
+ name: import("zod").ZodString;
6396
+ value: import("zod").ZodString;
6397
+ secret: import("zod").ZodOptional<import("zod").ZodBoolean>;
6398
+ }, import("zod/v4/core").$strict>, import("zod").ZodObject<{
6399
+ action: import("zod").ZodLiteral<"keep">;
6400
+ name: import("zod").ZodString;
6401
+ }, import("zod/v4/core").$strict>, import("zod").ZodObject<{
6402
+ action: import("zod").ZodLiteral<"remove">;
6403
+ name: import("zod").ZodString;
6404
+ }, import("zod/v4/core").$strict>, import("zod").ZodObject<{
6405
+ action: import("zod").ZodLiteral<"suppress">;
6406
+ name: import("zod").ZodString;
6407
+ }, import("zod/v4/core").$strict>], "action">>>;
6408
+ }, import("zod/v4/core").$strict>>;
5923
6409
  at: import("zod").ZodOptional<import("zod").ZodString>;
5924
6410
  cron: import("zod").ZodOptional<import("zod").ZodString>;
5925
6411
  data: import("zod").ZodOptional<import("zod").ZodJSONSchema>;
@@ -5937,6 +6423,7 @@ export declare const OPERATIONS: readonly [{
5937
6423
  }, import("zod/v4/core").$strict>>;
5938
6424
  everySeconds: import("zod").ZodOptional<import("zod").ZodNumber>;
5939
6425
  endpoint: import("zod").ZodOptional<import("zod").ZodString>;
6426
+ url: import("zod").ZodOptional<import("zod").ZodString>;
5940
6427
  latencyClass: import("zod").ZodOptional<import("zod").ZodEnum<{
5941
6428
  realtime: "realtime";
5942
6429
  bulk: "bulk";
@@ -5973,7 +6460,7 @@ export declare const OPERATIONS: readonly [{
5973
6460
  readonly requestHeaders: import("zod").ZodObject<{
5974
6461
  "If-Match": import("zod").ZodOptional<import("zod").ZodString>;
5975
6462
  }, import("zod/v4/core").$strip>;
5976
- readonly response: import("zod").ZodObject<{
6463
+ readonly response: import("zod").ZodNever | import("zod").ZodObject<{
5977
6464
  occurrence: import("zod").ZodObject<{
5978
6465
  generation: import("zod").ZodNumber;
5979
6466
  id: import("zod").ZodString;
@@ -6004,6 +6491,34 @@ export declare const OPERATIONS: readonly [{
6004
6491
  attemptCount: import("zod").ZodNumber;
6005
6492
  }, import("zod/v4/core").$strip>;
6006
6493
  schedule: import("zod").ZodObject<{
6494
+ http: import("zod").ZodOptional<import("zod").ZodObject<{
6495
+ method: import("zod").ZodEnum<{
6496
+ POST: "POST";
6497
+ PUT: "PUT";
6498
+ GET: "GET";
6499
+ }>;
6500
+ body: import("zod").ZodDiscriminatedUnion<[import("zod").ZodObject<{
6501
+ mode: import("zod").ZodLiteral<"envelope">;
6502
+ }, import("zod/v4/core").$strict>, import("zod").ZodObject<{
6503
+ mode: import("zod").ZodLiteral<"none">;
6504
+ }, import("zod/v4/core").$strict>, import("zod").ZodObject<{
6505
+ mode: import("zod").ZodLiteral<"json">;
6506
+ value: import("zod").ZodOptional<import("zod").ZodJSONSchema>;
6507
+ }, import("zod/v4/core").$strict>], "mode">;
6508
+ headers: import("zod").ZodArray<import("zod").ZodUnion<readonly [import("zod").ZodObject<{
6509
+ name: import("zod").ZodString;
6510
+ secret: import("zod").ZodLiteral<false>;
6511
+ value: import("zod").ZodString;
6512
+ }, import("zod/v4/core").$strict>, import("zod").ZodObject<{
6513
+ name: import("zod").ZodString;
6514
+ secret: import("zod").ZodLiteral<true>;
6515
+ configured: import("zod").ZodLiteral<true>;
6516
+ value: import("zod").ZodOptional<import("zod").ZodNever>;
6517
+ }, import("zod/v4/core").$strict>, import("zod").ZodObject<{
6518
+ name: import("zod").ZodString;
6519
+ suppressed: import("zod").ZodLiteral<true>;
6520
+ }, import("zod/v4/core").$strict>]>>;
6521
+ }, import("zod/v4/core").$strict>>;
6007
6522
  archivedAt: import("zod").ZodOptional<import("zod").ZodString>;
6008
6523
  data: import("zod").ZodOptional<import("zod").ZodJSONSchema>;
6009
6524
  createdAt: import("zod").ZodString;
@@ -6055,7 +6570,12 @@ export declare const OPERATIONS: readonly [{
6055
6570
  updatedAt: import("zod").ZodString;
6056
6571
  version: import("zod").ZodNumber;
6057
6572
  }, import("zod/v4/core").$strip>;
6058
- }, import("zod/v4/core").$strip> | import("zod").ZodNever;
6573
+ endpointSigningSecret: import("zod").ZodOptional<import("zod").ZodObject<{
6574
+ guidance: import("zod").ZodString;
6575
+ returned: import("zod").ZodLiteral<false>;
6576
+ revealUrl: import("zod").ZodOptional<import("zod").ZodString>;
6577
+ }, import("zod/v4/core").$strip>>;
6578
+ }, import("zod/v4/core").$strip>;
6059
6579
  }, {
6060
6580
  readonly scopes: readonly ["schedules:write"];
6061
6581
  readonly sessionAuthority: "headers";
@@ -6110,7 +6630,7 @@ export declare const OPERATIONS: readonly [{
6110
6630
  readonly requestHeaders: import("zod").ZodObject<{
6111
6631
  "If-Match": import("zod").ZodOptional<import("zod").ZodString>;
6112
6632
  }, import("zod/v4/core").$strip>;
6113
- readonly response: import("zod").ZodObject<{
6633
+ readonly response: import("zod").ZodNever | import("zod").ZodObject<{
6114
6634
  occurrence: import("zod").ZodObject<{
6115
6635
  generation: import("zod").ZodNumber;
6116
6636
  id: import("zod").ZodString;
@@ -6141,6 +6661,34 @@ export declare const OPERATIONS: readonly [{
6141
6661
  attemptCount: import("zod").ZodNumber;
6142
6662
  }, import("zod/v4/core").$strip>;
6143
6663
  schedule: import("zod").ZodObject<{
6664
+ http: import("zod").ZodOptional<import("zod").ZodObject<{
6665
+ method: import("zod").ZodEnum<{
6666
+ POST: "POST";
6667
+ PUT: "PUT";
6668
+ GET: "GET";
6669
+ }>;
6670
+ body: import("zod").ZodDiscriminatedUnion<[import("zod").ZodObject<{
6671
+ mode: import("zod").ZodLiteral<"envelope">;
6672
+ }, import("zod/v4/core").$strict>, import("zod").ZodObject<{
6673
+ mode: import("zod").ZodLiteral<"none">;
6674
+ }, import("zod/v4/core").$strict>, import("zod").ZodObject<{
6675
+ mode: import("zod").ZodLiteral<"json">;
6676
+ value: import("zod").ZodOptional<import("zod").ZodJSONSchema>;
6677
+ }, import("zod/v4/core").$strict>], "mode">;
6678
+ headers: import("zod").ZodArray<import("zod").ZodUnion<readonly [import("zod").ZodObject<{
6679
+ name: import("zod").ZodString;
6680
+ secret: import("zod").ZodLiteral<false>;
6681
+ value: import("zod").ZodString;
6682
+ }, import("zod/v4/core").$strict>, import("zod").ZodObject<{
6683
+ name: import("zod").ZodString;
6684
+ secret: import("zod").ZodLiteral<true>;
6685
+ configured: import("zod").ZodLiteral<true>;
6686
+ value: import("zod").ZodOptional<import("zod").ZodNever>;
6687
+ }, import("zod/v4/core").$strict>, import("zod").ZodObject<{
6688
+ name: import("zod").ZodString;
6689
+ suppressed: import("zod").ZodLiteral<true>;
6690
+ }, import("zod/v4/core").$strict>]>>;
6691
+ }, import("zod/v4/core").$strict>>;
6144
6692
  archivedAt: import("zod").ZodOptional<import("zod").ZodString>;
6145
6693
  data: import("zod").ZodOptional<import("zod").ZodJSONSchema>;
6146
6694
  createdAt: import("zod").ZodString;
@@ -6192,7 +6740,7 @@ export declare const OPERATIONS: readonly [{
6192
6740
  updatedAt: import("zod").ZodString;
6193
6741
  version: import("zod").ZodNumber;
6194
6742
  }, import("zod/v4/core").$strip>;
6195
- }, import("zod/v4/core").$strip> | import("zod").ZodNever;
6743
+ }, import("zod/v4/core").$strip>;
6196
6744
  }, {
6197
6745
  readonly scopes: readonly ["schedules:write"];
6198
6746
  readonly sessionAuthority: "headers";
@@ -6247,7 +6795,7 @@ export declare const OPERATIONS: readonly [{
6247
6795
  readonly requestHeaders: import("zod").ZodObject<{
6248
6796
  "If-Match": import("zod").ZodOptional<import("zod").ZodString>;
6249
6797
  }, import("zod/v4/core").$strip>;
6250
- readonly response: import("zod").ZodObject<{
6798
+ readonly response: import("zod").ZodNever | import("zod").ZodObject<{
6251
6799
  occurrence: import("zod").ZodObject<{
6252
6800
  generation: import("zod").ZodNumber;
6253
6801
  id: import("zod").ZodString;
@@ -6278,6 +6826,34 @@ export declare const OPERATIONS: readonly [{
6278
6826
  attemptCount: import("zod").ZodNumber;
6279
6827
  }, import("zod/v4/core").$strip>;
6280
6828
  schedule: import("zod").ZodObject<{
6829
+ http: import("zod").ZodOptional<import("zod").ZodObject<{
6830
+ method: import("zod").ZodEnum<{
6831
+ POST: "POST";
6832
+ PUT: "PUT";
6833
+ GET: "GET";
6834
+ }>;
6835
+ body: import("zod").ZodDiscriminatedUnion<[import("zod").ZodObject<{
6836
+ mode: import("zod").ZodLiteral<"envelope">;
6837
+ }, import("zod/v4/core").$strict>, import("zod").ZodObject<{
6838
+ mode: import("zod").ZodLiteral<"none">;
6839
+ }, import("zod/v4/core").$strict>, import("zod").ZodObject<{
6840
+ mode: import("zod").ZodLiteral<"json">;
6841
+ value: import("zod").ZodOptional<import("zod").ZodJSONSchema>;
6842
+ }, import("zod/v4/core").$strict>], "mode">;
6843
+ headers: import("zod").ZodArray<import("zod").ZodUnion<readonly [import("zod").ZodObject<{
6844
+ name: import("zod").ZodString;
6845
+ secret: import("zod").ZodLiteral<false>;
6846
+ value: import("zod").ZodString;
6847
+ }, import("zod/v4/core").$strict>, import("zod").ZodObject<{
6848
+ name: import("zod").ZodString;
6849
+ secret: import("zod").ZodLiteral<true>;
6850
+ configured: import("zod").ZodLiteral<true>;
6851
+ value: import("zod").ZodOptional<import("zod").ZodNever>;
6852
+ }, import("zod/v4/core").$strict>, import("zod").ZodObject<{
6853
+ name: import("zod").ZodString;
6854
+ suppressed: import("zod").ZodLiteral<true>;
6855
+ }, import("zod/v4/core").$strict>]>>;
6856
+ }, import("zod/v4/core").$strict>>;
6281
6857
  archivedAt: import("zod").ZodOptional<import("zod").ZodString>;
6282
6858
  data: import("zod").ZodOptional<import("zod").ZodJSONSchema>;
6283
6859
  createdAt: import("zod").ZodString;
@@ -6329,7 +6905,7 @@ export declare const OPERATIONS: readonly [{
6329
6905
  updatedAt: import("zod").ZodString;
6330
6906
  version: import("zod").ZodNumber;
6331
6907
  }, import("zod/v4/core").$strip>;
6332
- }, import("zod/v4/core").$strip> | import("zod").ZodNever;
6908
+ }, import("zod/v4/core").$strip>;
6333
6909
  }, {
6334
6910
  readonly scopes: readonly ["schedules:write"];
6335
6911
  readonly sessionAuthority: "headers";
@@ -6385,7 +6961,7 @@ export declare const OPERATIONS: readonly [{
6385
6961
  readonly requestHeaders: import("zod").ZodObject<{
6386
6962
  "If-Match": import("zod").ZodOptional<import("zod").ZodString>;
6387
6963
  }, import("zod/v4/core").$strip>;
6388
- readonly response: import("zod").ZodObject<{
6964
+ readonly response: import("zod").ZodNever | import("zod").ZodObject<{
6389
6965
  occurrence: import("zod").ZodObject<{
6390
6966
  generation: import("zod").ZodNumber;
6391
6967
  id: import("zod").ZodString;
@@ -6416,6 +6992,34 @@ export declare const OPERATIONS: readonly [{
6416
6992
  attemptCount: import("zod").ZodNumber;
6417
6993
  }, import("zod/v4/core").$strip>;
6418
6994
  schedule: import("zod").ZodObject<{
6995
+ http: import("zod").ZodOptional<import("zod").ZodObject<{
6996
+ method: import("zod").ZodEnum<{
6997
+ POST: "POST";
6998
+ PUT: "PUT";
6999
+ GET: "GET";
7000
+ }>;
7001
+ body: import("zod").ZodDiscriminatedUnion<[import("zod").ZodObject<{
7002
+ mode: import("zod").ZodLiteral<"envelope">;
7003
+ }, import("zod/v4/core").$strict>, import("zod").ZodObject<{
7004
+ mode: import("zod").ZodLiteral<"none">;
7005
+ }, import("zod/v4/core").$strict>, import("zod").ZodObject<{
7006
+ mode: import("zod").ZodLiteral<"json">;
7007
+ value: import("zod").ZodOptional<import("zod").ZodJSONSchema>;
7008
+ }, import("zod/v4/core").$strict>], "mode">;
7009
+ headers: import("zod").ZodArray<import("zod").ZodUnion<readonly [import("zod").ZodObject<{
7010
+ name: import("zod").ZodString;
7011
+ secret: import("zod").ZodLiteral<false>;
7012
+ value: import("zod").ZodString;
7013
+ }, import("zod/v4/core").$strict>, import("zod").ZodObject<{
7014
+ name: import("zod").ZodString;
7015
+ secret: import("zod").ZodLiteral<true>;
7016
+ configured: import("zod").ZodLiteral<true>;
7017
+ value: import("zod").ZodOptional<import("zod").ZodNever>;
7018
+ }, import("zod/v4/core").$strict>, import("zod").ZodObject<{
7019
+ name: import("zod").ZodString;
7020
+ suppressed: import("zod").ZodLiteral<true>;
7021
+ }, import("zod/v4/core").$strict>]>>;
7022
+ }, import("zod/v4/core").$strict>>;
6419
7023
  archivedAt: import("zod").ZodOptional<import("zod").ZodString>;
6420
7024
  data: import("zod").ZodOptional<import("zod").ZodJSONSchema>;
6421
7025
  createdAt: import("zod").ZodString;
@@ -6467,7 +7071,7 @@ export declare const OPERATIONS: readonly [{
6467
7071
  updatedAt: import("zod").ZodString;
6468
7072
  version: import("zod").ZodNumber;
6469
7073
  }, import("zod/v4/core").$strip>;
6470
- }, import("zod/v4/core").$strip> | import("zod").ZodNever;
7074
+ }, import("zod/v4/core").$strip>;
6471
7075
  }, {
6472
7076
  readonly scopes: readonly ["schedules:write"];
6473
7077
  readonly sessionAuthority: "headers";
@@ -6524,7 +7128,7 @@ export declare const OPERATIONS: readonly [{
6524
7128
  readonly requestHeaders: import("zod").ZodObject<{
6525
7129
  "If-Match": import("zod").ZodOptional<import("zod").ZodString>;
6526
7130
  }, import("zod/v4/core").$strip>;
6527
- readonly response: import("zod").ZodObject<{
7131
+ readonly response: import("zod").ZodNever | import("zod").ZodObject<{
6528
7132
  occurrence: import("zod").ZodObject<{
6529
7133
  generation: import("zod").ZodNumber;
6530
7134
  id: import("zod").ZodString;
@@ -6555,6 +7159,34 @@ export declare const OPERATIONS: readonly [{
6555
7159
  attemptCount: import("zod").ZodNumber;
6556
7160
  }, import("zod/v4/core").$strip>;
6557
7161
  schedule: import("zod").ZodObject<{
7162
+ http: import("zod").ZodOptional<import("zod").ZodObject<{
7163
+ method: import("zod").ZodEnum<{
7164
+ POST: "POST";
7165
+ PUT: "PUT";
7166
+ GET: "GET";
7167
+ }>;
7168
+ body: import("zod").ZodDiscriminatedUnion<[import("zod").ZodObject<{
7169
+ mode: import("zod").ZodLiteral<"envelope">;
7170
+ }, import("zod/v4/core").$strict>, import("zod").ZodObject<{
7171
+ mode: import("zod").ZodLiteral<"none">;
7172
+ }, import("zod/v4/core").$strict>, import("zod").ZodObject<{
7173
+ mode: import("zod").ZodLiteral<"json">;
7174
+ value: import("zod").ZodOptional<import("zod").ZodJSONSchema>;
7175
+ }, import("zod/v4/core").$strict>], "mode">;
7176
+ headers: import("zod").ZodArray<import("zod").ZodUnion<readonly [import("zod").ZodObject<{
7177
+ name: import("zod").ZodString;
7178
+ secret: import("zod").ZodLiteral<false>;
7179
+ value: import("zod").ZodString;
7180
+ }, import("zod/v4/core").$strict>, import("zod").ZodObject<{
7181
+ name: import("zod").ZodString;
7182
+ secret: import("zod").ZodLiteral<true>;
7183
+ configured: import("zod").ZodLiteral<true>;
7184
+ value: import("zod").ZodOptional<import("zod").ZodNever>;
7185
+ }, import("zod/v4/core").$strict>, import("zod").ZodObject<{
7186
+ name: import("zod").ZodString;
7187
+ suppressed: import("zod").ZodLiteral<true>;
7188
+ }, import("zod/v4/core").$strict>]>>;
7189
+ }, import("zod/v4/core").$strict>>;
6558
7190
  archivedAt: import("zod").ZodOptional<import("zod").ZodString>;
6559
7191
  data: import("zod").ZodOptional<import("zod").ZodJSONSchema>;
6560
7192
  createdAt: import("zod").ZodString;
@@ -6606,7 +7238,7 @@ export declare const OPERATIONS: readonly [{
6606
7238
  updatedAt: import("zod").ZodString;
6607
7239
  version: import("zod").ZodNumber;
6608
7240
  }, import("zod/v4/core").$strip>;
6609
- }, import("zod/v4/core").$strip> | import("zod").ZodNever;
7241
+ }, import("zod/v4/core").$strip>;
6610
7242
  }];
6611
7243
  /**
6612
7244
  * Every declared operation id, as a literal union.
@@ -6617,6 +7249,40 @@ export declare const OPERATIONS: readonly [{
6617
7249
  * list and the implementation can drift together while the test still passes.
6618
7250
  */
6619
7251
  export type OperationId = (typeof OPERATIONS)[number]["id"];
7252
+ /**
7253
+ * The body a caller sends to an operation, as its request schema accepts it.
7254
+ *
7255
+ * What the generated client types each builder's `body` with (W9-46). Until
7256
+ * then every body was `unknown`, so a field the API had accepted for weeks —
7257
+ * `url` on `schedules.create` — compiled exactly as well as a misspelling of
7258
+ * it, and the published package could not tell a TypeScript reader either was
7259
+ * wrong. The schema's *input* rather than its output: a caller writes what the
7260
+ * schema parses, before defaults and transforms.
7261
+ */
7262
+ export type OperationRequestBody<TId extends OperationId> = [
7263
+ OperationEntry<TId>
7264
+ ] extends [never] ? unknown : OperationEntry<TId> extends {
7265
+ readonly request: infer TSchema extends z.ZodTypeAny;
7266
+ } ? ReadonlyInput<z.input<TSchema>> : unknown;
7267
+ /**
7268
+ * A request body as a caller may hold it: readonly at every depth.
7269
+ *
7270
+ * A builder only reads what it is handed, and a caller keeping its settings in
7271
+ * `readonly` arrays (the dashboard's header changes do) should not have to copy
7272
+ * them to satisfy a type that promises nothing about mutation.
7273
+ */
7274
+ type ReadonlyInput<T> = T extends readonly (infer TItem)[] ? readonly ReadonlyInput<TItem>[] : T extends object ? {
7275
+ readonly [TKey in keyof T]: ReadonlyInput<T[TKey]>;
7276
+ } : T;
7277
+ /**
7278
+ * One registry entry, by id — `never` for an entry contributed by a module
7279
+ * that declares its operations as plain `OperationDefinition`s, whose `id` is
7280
+ * `string`. Those bodies stay `unknown` rather than collapsing to `never`,
7281
+ * which would make the operation uncallable.
7282
+ */
7283
+ type OperationEntry<TId extends OperationId> = Extract<(typeof OPERATIONS)[number], {
7284
+ readonly id: TId;
7285
+ }>;
6620
7286
  /**
6621
7287
  * Headers the contract mock uses to expose state a body cannot carry.
6622
7288
  *