@game-infra/api-schemas-core 0.4.0 → 0.6.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
package/dist/auth.d.ts CHANGED
@@ -125,8 +125,13 @@ export declare const IdentityReadinessResponseSchema: import("valibot").ObjectSc
125
125
  readonly usersTable: import("valibot").BooleanSchema<undefined>;
126
126
  /** Absent from a deployment predating service tokens. */
127
127
  readonly serviceTokensTable: import("valibot").OptionalSchema<import("valibot").BooleanSchema<undefined>, undefined>;
128
+ /**
129
+ * False when `JWT_SIGNING_KEY` or `JWT_PREVIOUS_PUBLIC_KEYS` is bound but
130
+ * unreadable. Absent from a deployment predating ES256 tokens.
131
+ */
132
+ readonly signingKeys: import("valibot").OptionalSchema<import("valibot").BooleanSchema<undefined>, undefined>;
128
133
  }, undefined>;
129
- readonly failedChecks: import("valibot").ArraySchema<import("valibot").UnionSchema<[import("valibot").LiteralSchema<"jwtSecret", undefined>, import("valibot").LiteralSchema<"usersTable", undefined>, import("valibot").LiteralSchema<"serviceTokensTable", undefined>], undefined>, undefined>;
134
+ readonly failedChecks: import("valibot").ArraySchema<import("valibot").UnionSchema<[import("valibot").LiteralSchema<"jwtSecret", undefined>, import("valibot").LiteralSchema<"usersTable", undefined>, import("valibot").LiteralSchema<"serviceTokensTable", undefined>, import("valibot").LiteralSchema<"signingKeys", undefined>], undefined>, undefined>;
130
135
  }, undefined>;
131
136
  /**
132
137
  * Inferred identity-service readiness response.
@@ -138,4 +143,53 @@ export declare const IdentityReadinessResponseSchema: import("valibot").ObjectSc
138
143
  * ```
139
144
  */
140
145
  export type IdentityReadinessResponse = InferOutput<typeof IdentityReadinessResponseSchema>;
146
+ /**
147
+ * One public ES256 key identity-service signs tokens with, as RFC 7517 lists
148
+ * it. A token's header `kid` names the key that verifies it.
149
+ *
150
+ * @example
151
+ * ```ts
152
+ * import { PublicJwkSchema } from '@game-infra/api-schemas-core'
153
+ * ```
154
+ */
155
+ export declare const PublicJwkSchema: import("valibot").ObjectSchema<{
156
+ readonly kty: import("valibot").LiteralSchema<"EC", undefined>;
157
+ readonly crv: import("valibot").LiteralSchema<"P-256", undefined>;
158
+ readonly x: import("valibot").StringSchema<undefined>;
159
+ readonly y: import("valibot").StringSchema<undefined>;
160
+ readonly kid: import("valibot").StringSchema<undefined>;
161
+ readonly alg: import("valibot").LiteralSchema<"ES256", undefined>;
162
+ readonly use: import("valibot").LiteralSchema<"sig", undefined>;
163
+ }, undefined>;
164
+ /**
165
+ * The JWKS document at `/.well-known/jwks.json`: the key tokens are signed with
166
+ * now, then keys that signed before the last rotation. Unwrapped, in the
167
+ * standard shape, so any JWT library can read it.
168
+ *
169
+ * @example
170
+ * ```ts
171
+ * import { JwksResponseSchema } from '@game-infra/api-schemas-core'
172
+ * ```
173
+ */
174
+ export declare const JwksResponseSchema: import("valibot").ObjectSchema<{
175
+ readonly keys: import("valibot").ArraySchema<import("valibot").ObjectSchema<{
176
+ readonly kty: import("valibot").LiteralSchema<"EC", undefined>;
177
+ readonly crv: import("valibot").LiteralSchema<"P-256", undefined>;
178
+ readonly x: import("valibot").StringSchema<undefined>;
179
+ readonly y: import("valibot").StringSchema<undefined>;
180
+ readonly kid: import("valibot").StringSchema<undefined>;
181
+ readonly alg: import("valibot").LiteralSchema<"ES256", undefined>;
182
+ readonly use: import("valibot").LiteralSchema<"sig", undefined>;
183
+ }, undefined>, undefined>;
184
+ }, undefined>;
185
+ /**
186
+ * Inferred JWKS document.
187
+ *
188
+ * @example
189
+ * ```ts
190
+ * import type { JwksResponse } from '@game-infra/api-schemas-core'
191
+ * const empty: JwksResponse = { keys: [] }
192
+ * ```
193
+ */
194
+ export type JwksResponse = InferOutput<typeof JwksResponseSchema>;
141
195
  //# sourceMappingURL=auth.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"auth.d.ts","sourceRoot":"","sources":["../src/auth.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,KAAK,WAAW,EAcjB,MAAM,SAAS,CAAC;AAIjB;;GAEG;AACH,eAAO,MAAM,cAAc;aACzB,mBAAmB,EAAE,CAAC;aACtB,mBAAmB,EAAE,GAAG;aACxB,mBAAmB,EAAE,CAAC;aACtB,mBAAmB,EAAE,EAAE;IACvB;;;;;;;OAOG;aACH,gBAAgB;CACR,CAAC;AAEX;;;;;GAKG;AACH,eAAO,MAAM,qBAAqB;;;;aAahC,CAAC;AAEH,MAAM,MAAM,eAAe,GAAG,WAAW,CAAC,OAAO,qBAAqB,CAAC,CAAC;AAExE;;GAEG;AACH,eAAO,MAAM,wBAAwB;IACnC,KAAK;IACL,MAAM;IACN,QAAQ;CACT,CAAC;AAEF;;;;;GAKG;AACH,eAAO,MAAM,sBAAsB;;;;;;;aAAwD,CAAC;AAE5F,MAAM,MAAM,gBAAgB,GAAG,WAAW,CAAC,OAAO,sBAAsB,CAAC,CAAC;AAE1E;;GAEG;AACH,eAAO,MAAM,kBAAkB;;;aAG7B,CAAC;AAEH,MAAM,MAAM,YAAY,GAAG,WAAW,CAAC,OAAO,kBAAkB,CAAC,CAAC;AAElE;;;GAGG;AACH,eAAO,MAAM,mBAAmB;;;;;;;aAAwD,CAAC;AAEzF,MAAM,MAAM,aAAa,GAAG,WAAW,CAAC,OAAO,mBAAmB,CAAC,CAAC;AAEpE;;GAEG;AACH,eAAO,MAAM,0BAA0B;;aAErC,CAAC;AAEH,MAAM,MAAM,oBAAoB,GAAG,WAAW,CAAC,OAAO,0BAA0B,CAAC,CAAC;AAElF;;GAEG;AACH,eAAO,MAAM,2BAA2B;;;;;;;aAItC,CAAC;AAEH,MAAM,MAAM,qBAAqB,GAAG,WAAW,CAAC,OAAO,2BAA2B,CAAC,CAAC;AAEpF;;;;GAIG;AACH,eAAO,MAAM,kCAAkC;;;;;aAE7C,CAAC;AAEH,MAAM,MAAM,4BAA4B,GAAG,WAAW,CAAC,OAAO,kCAAkC,CAAC,CAAC;AAElG;;;;;;;;;;;;;GAaG;AACH,eAAO,MAAM,+BAA+B;;;;;QAKxC,yDAAyD;;;;aAM3D,CAAC;AAEH;;;;;;;;GAQG;AACH,MAAM,MAAM,yBAAyB,GAAG,WAAW,CAAC,OAAO,+BAA+B,CAAC,CAAC"}
1
+ {"version":3,"file":"auth.d.ts","sourceRoot":"","sources":["../src/auth.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,KAAK,WAAW,EAcjB,MAAM,SAAS,CAAC;AAIjB;;GAEG;AACH,eAAO,MAAM,cAAc;aACzB,mBAAmB,EAAE,CAAC;aACtB,mBAAmB,EAAE,GAAG;aACxB,mBAAmB,EAAE,CAAC;aACtB,mBAAmB,EAAE,EAAE;IACvB;;;;;;;OAOG;aACH,gBAAgB;CACR,CAAC;AAEX;;;;;GAKG;AACH,eAAO,MAAM,qBAAqB;;;;aAahC,CAAC;AAEH,MAAM,MAAM,eAAe,GAAG,WAAW,CAAC,OAAO,qBAAqB,CAAC,CAAC;AAExE;;GAEG;AACH,eAAO,MAAM,wBAAwB;IACnC,KAAK;IACL,MAAM;IACN,QAAQ;CACT,CAAC;AAEF;;;;;GAKG;AACH,eAAO,MAAM,sBAAsB;;;;;;;aAAwD,CAAC;AAE5F,MAAM,MAAM,gBAAgB,GAAG,WAAW,CAAC,OAAO,sBAAsB,CAAC,CAAC;AAE1E;;GAEG;AACH,eAAO,MAAM,kBAAkB;;;aAG7B,CAAC;AAEH,MAAM,MAAM,YAAY,GAAG,WAAW,CAAC,OAAO,kBAAkB,CAAC,CAAC;AAElE;;;GAGG;AACH,eAAO,MAAM,mBAAmB;;;;;;;aAAwD,CAAC;AAEzF,MAAM,MAAM,aAAa,GAAG,WAAW,CAAC,OAAO,mBAAmB,CAAC,CAAC;AAEpE;;GAEG;AACH,eAAO,MAAM,0BAA0B;;aAErC,CAAC;AAEH,MAAM,MAAM,oBAAoB,GAAG,WAAW,CAAC,OAAO,0BAA0B,CAAC,CAAC;AAElF;;GAEG;AACH,eAAO,MAAM,2BAA2B;;;;;;;aAItC,CAAC;AAEH,MAAM,MAAM,qBAAqB,GAAG,WAAW,CAAC,OAAO,2BAA2B,CAAC,CAAC;AAEpF;;;;GAIG;AACH,eAAO,MAAM,kCAAkC;;;;;aAE7C,CAAC;AAEH,MAAM,MAAM,4BAA4B,GAAG,WAAW,CAAC,OAAO,kCAAkC,CAAC,CAAC;AAElG;;;;;;;;;;;;;GAaG;AACH,eAAO,MAAM,+BAA+B;;;;;QAKxC,yDAAyD;;QAEzD;;;WAGG;;;;aAWL,CAAC;AAEH;;;;;;;;GAQG;AACH,MAAM,MAAM,yBAAyB,GAAG,WAAW,CAAC,OAAO,+BAA+B,CAAC,CAAC;AAE5F;;;;;;;;GAQG;AACH,eAAO,MAAM,eAAe;;;;;;;;aAQ1B,CAAC;AAEH;;;;;;;;;GASG;AACH,eAAO,MAAM,kBAAkB;;;;;;;;;;aAE7B,CAAC;AAEH;;;;;;;;GAQG;AACH,MAAM,MAAM,YAAY,GAAG,WAAW,CAAC,OAAO,kBAAkB,CAAC,CAAC"}
package/dist/auth.js CHANGED
@@ -99,7 +99,48 @@ export const IdentityReadinessResponseSchema = object({
99
99
  usersTable: boolean(),
100
100
  /** Absent from a deployment predating service tokens. */
101
101
  serviceTokensTable: optional(boolean()),
102
+ /**
103
+ * False when `JWT_SIGNING_KEY` or `JWT_PREVIOUS_PUBLIC_KEYS` is bound but
104
+ * unreadable. Absent from a deployment predating ES256 tokens.
105
+ */
106
+ signingKeys: optional(boolean()),
102
107
  }),
103
- failedChecks: array(union([literal("jwtSecret"), literal("usersTable"), literal("serviceTokensTable")])),
108
+ failedChecks: array(union([
109
+ literal("jwtSecret"),
110
+ literal("usersTable"),
111
+ literal("serviceTokensTable"),
112
+ literal("signingKeys"),
113
+ ])),
114
+ });
115
+ /**
116
+ * One public ES256 key identity-service signs tokens with, as RFC 7517 lists
117
+ * it. A token's header `kid` names the key that verifies it.
118
+ *
119
+ * @example
120
+ * ```ts
121
+ * import { PublicJwkSchema } from '@game-infra/api-schemas-core'
122
+ * ```
123
+ */
124
+ export const PublicJwkSchema = object({
125
+ kty: literal("EC"),
126
+ crv: literal("P-256"),
127
+ x: string(),
128
+ y: string(),
129
+ kid: string(),
130
+ alg: literal("ES256"),
131
+ use: literal("sig"),
132
+ });
133
+ /**
134
+ * The JWKS document at `/.well-known/jwks.json`: the key tokens are signed with
135
+ * now, then keys that signed before the last rotation. Unwrapped, in the
136
+ * standard shape, so any JWT library can read it.
137
+ *
138
+ * @example
139
+ * ```ts
140
+ * import { JwksResponseSchema } from '@game-infra/api-schemas-core'
141
+ * ```
142
+ */
143
+ export const JwksResponseSchema = object({
144
+ keys: array(PublicJwkSchema),
104
145
  });
105
146
  //# sourceMappingURL=auth.js.map
package/dist/auth.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"auth.js","sourceRoot":"","sources":["../src/auth.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"auth.js","sourceRoot":"","sources":["../src/auth.ts"],"names":[],"mappings":"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"}
@@ -116,8 +116,9 @@ export declare const identityReadinessContract: {
116
116
  readonly jwtSecret: import("valibot").BooleanSchema<undefined>;
117
117
  readonly usersTable: import("valibot").BooleanSchema<undefined>;
118
118
  readonly serviceTokensTable: import("valibot").OptionalSchema<import("valibot").BooleanSchema<undefined>, undefined>;
119
+ readonly signingKeys: import("valibot").OptionalSchema<import("valibot").BooleanSchema<undefined>, undefined>;
119
120
  }, undefined>;
120
- readonly failedChecks: import("valibot").ArraySchema<import("valibot").UnionSchema<[import("valibot").LiteralSchema<"jwtSecret", undefined>, import("valibot").LiteralSchema<"usersTable", undefined>, import("valibot").LiteralSchema<"serviceTokensTable", undefined>], undefined>, undefined>;
121
+ readonly failedChecks: import("valibot").ArraySchema<import("valibot").UnionSchema<[import("valibot").LiteralSchema<"jwtSecret", undefined>, import("valibot").LiteralSchema<"usersTable", undefined>, import("valibot").LiteralSchema<"serviceTokensTable", undefined>, import("valibot").LiteralSchema<"signingKeys", undefined>], undefined>, undefined>;
121
122
  }, undefined>;
122
123
  503: import("valibot").ObjectSchema<{
123
124
  readonly success: import("valibot").BooleanSchema<undefined>;
@@ -125,8 +126,37 @@ export declare const identityReadinessContract: {
125
126
  readonly jwtSecret: import("valibot").BooleanSchema<undefined>;
126
127
  readonly usersTable: import("valibot").BooleanSchema<undefined>;
127
128
  readonly serviceTokensTable: import("valibot").OptionalSchema<import("valibot").BooleanSchema<undefined>, undefined>;
129
+ readonly signingKeys: import("valibot").OptionalSchema<import("valibot").BooleanSchema<undefined>, undefined>;
128
130
  }, undefined>;
129
- readonly failedChecks: import("valibot").ArraySchema<import("valibot").UnionSchema<[import("valibot").LiteralSchema<"jwtSecret", undefined>, import("valibot").LiteralSchema<"usersTable", undefined>, import("valibot").LiteralSchema<"serviceTokensTable", undefined>], undefined>, undefined>;
131
+ readonly failedChecks: import("valibot").ArraySchema<import("valibot").UnionSchema<[import("valibot").LiteralSchema<"jwtSecret", undefined>, import("valibot").LiteralSchema<"usersTable", undefined>, import("valibot").LiteralSchema<"serviceTokensTable", undefined>, import("valibot").LiteralSchema<"signingKeys", undefined>], undefined>, undefined>;
132
+ }, undefined>;
133
+ };
134
+ };
135
+ /**
136
+ * The public keys identity-service signs ES256 tokens with.
137
+ *
138
+ * Unauthenticated: a verifier fetches this before it can check any token.
139
+ *
140
+ * @example
141
+ * ```ts
142
+ * import { jwksContract } from '@game-infra/api-schemas-core'
143
+ * jwksContract.pathResolver({}) // '/.well-known/jwks.json'
144
+ * ```
145
+ */
146
+ export declare const jwksContract: {
147
+ readonly method: "get";
148
+ readonly pathResolver: () => string;
149
+ readonly responsesByStatusCode: {
150
+ 200: import("valibot").ObjectSchema<{
151
+ readonly keys: import("valibot").ArraySchema<import("valibot").ObjectSchema<{
152
+ readonly kty: import("valibot").LiteralSchema<"EC", undefined>;
153
+ readonly crv: import("valibot").LiteralSchema<"P-256", undefined>;
154
+ readonly x: import("valibot").StringSchema<undefined>;
155
+ readonly y: import("valibot").StringSchema<undefined>;
156
+ readonly kid: import("valibot").StringSchema<undefined>;
157
+ readonly alg: import("valibot").LiteralSchema<"ES256", undefined>;
158
+ readonly use: import("valibot").LiteralSchema<"sig", undefined>;
159
+ }, undefined>, undefined>;
130
160
  }, undefined>;
131
161
  };
132
162
  };
@@ -298,6 +328,36 @@ export declare const serviceTokenPurgeContract: {
298
328
  }, undefined>;
299
329
  };
300
330
  };
331
+ /**
332
+ * Mint a short-lived token that acts as another account, for a backend service
333
+ * doing work a user started, such as a queued job.
334
+ *
335
+ * The bearer must be a service token holding the `delegate` claim, issued from
336
+ * an account that still holds it.
337
+ *
338
+ * @example
339
+ * ```ts
340
+ * import { serviceTokenDelegateContract } from '@game-infra/api-schemas-core'
341
+ * serviceTokenDelegateContract.pathResolver({}) // '/service-tokens/delegate'
342
+ * ```
343
+ */
344
+ export declare const serviceTokenDelegateContract: {
345
+ readonly method: "post";
346
+ readonly pathResolver: () => string;
347
+ readonly requestBodySchema: import("valibot").ObjectSchema<{
348
+ readonly userId: import("valibot").SchemaWithPipe<readonly [import("valibot").NumberSchema<undefined>, import("valibot").IntegerAction<number, "userId must be an account id">]>;
349
+ readonly ttlSeconds: import("valibot").OptionalSchema<import("valibot").SchemaWithPipe<readonly [import("valibot").NumberSchema<undefined>, import("valibot").IntegerAction<number, "TTL must be a whole number of seconds">, import("valibot").MinValueAction<number, 60, undefined>, import("valibot").MaxValueAction<number, number, undefined>]>, undefined>;
350
+ }, undefined>;
351
+ readonly responsesByStatusCode: {
352
+ 200: import("valibot").ObjectSchema<{
353
+ readonly success: import("valibot").BooleanSchema<undefined>;
354
+ readonly error: import("valibot").OptionalSchema<import("valibot").StringSchema<undefined>, undefined>;
355
+ } & {
356
+ token: import("valibot").OptionalSchema<import("valibot").StringSchema<undefined>, undefined>;
357
+ expiresAt: import("valibot").OptionalSchema<import("valibot").StringSchema<undefined>, undefined>;
358
+ }, undefined>;
359
+ };
360
+ };
301
361
  /**
302
362
  * List every account. Requires the `admin` claim.
303
363
  *
@@ -1 +1 @@
1
- {"version":3,"file":"contracts.d.ts","sourceRoot":"","sources":["../src/contracts.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"contracts.d.ts","sourceRoot":"","sources":["../src/contracts.ts"],"names":[],"mappings":"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"}
package/dist/contracts.js CHANGED
@@ -1,12 +1,12 @@
1
1
  import { ContractNoBody, defineApiContract, withObjectKeys } from "@toad-contracts/valibot";
2
2
  import { object, string } from "valibot";
3
- import { LoginRequestSchema, LoginResponseSchema, RegisterRequestSchema, RegisterResponseSchema, ValidateServiceTokenResponseSchema, IdentityReadinessResponseSchema, ValidateTokenRequestSchema, ValidateTokenResponseSchema, } from "./auth.js";
3
+ import { LoginRequestSchema, LoginResponseSchema, RegisterRequestSchema, RegisterResponseSchema, ValidateServiceTokenResponseSchema, IdentityReadinessResponseSchema, JwksResponseSchema, ValidateTokenRequestSchema, ValidateTokenResponseSchema, } from "./auth.js";
4
4
  import { DownloadBackupResponseSchema, ListBackupsResponseSchema, RestoreBackupRequestSchema, RestoreBackupResponseSchema, TriggerBackupResponseSchema, } from "./backup.js";
5
5
  import { ApiResponseSchema } from "./common.js";
6
6
  import { FeedbackSubmitRequestSchema, FeedbackSubmitResponseSchema } from "./feedback.js";
7
7
  import { GameEntityBulkSaveRequestSchema, GameEntityBulkSaveResponseSchema, GameEntityDeleteResponseSchema, GameEntityListResponseSchema, GameEntityLoadResponseSchema, GameEntitySaveRequestSchema, GameEntitySaveResponseSchema, } from "./gameEntity.js";
8
8
  import { SavegameListSlotsResponseSchema, SavegameLoadResponseSchema, SavegameSaveRequestSchema, SavegameSaveResponseSchema, } from "./savegame.js";
9
- import { CreateServiceTokenRequestSchema, CreateServiceTokenResponseSchema, ListServiceTokensResponseSchema, PurgeServiceTokensResponseSchema, RevokeServiceTokenResponseSchema, ServiceTokenValidateRequestSchema, ServiceTokenValidateResponseSchema, } from "./serviceToken.js";
9
+ import { CreateServiceTokenRequestSchema, CreateServiceTokenResponseSchema, DelegateServiceTokenRequestSchema, DelegateServiceTokenResponseSchema, ListServiceTokensResponseSchema, PurgeServiceTokensResponseSchema, RevokeServiceTokenResponseSchema, ServiceTokenValidateRequestSchema, ServiceTokenValidateResponseSchema, } from "./serviceToken.js";
10
10
  import { CreateUserRequestSchema, DeleteUserResponseSchema, ListUsersResponseSchema, UpdateUserRequestSchema, UserResponseSchema, } from "./user.js";
11
11
  /**
12
12
  * Typed endpoint contracts for the generic service API.
@@ -83,6 +83,22 @@ export const identityReadinessContract = defineApiContract({
83
83
  503: IdentityReadinessResponseSchema,
84
84
  },
85
85
  });
86
+ /**
87
+ * The public keys identity-service signs ES256 tokens with.
88
+ *
89
+ * Unauthenticated: a verifier fetches this before it can check any token.
90
+ *
91
+ * @example
92
+ * ```ts
93
+ * import { jwksContract } from '@game-infra/api-schemas-core'
94
+ * jwksContract.pathResolver({}) // '/.well-known/jwks.json'
95
+ * ```
96
+ */
97
+ export const jwksContract = defineApiContract({
98
+ method: "get",
99
+ pathResolver: () => "/.well-known/jwks.json",
100
+ responsesByStatusCode: { 200: JwksResponseSchema },
101
+ });
86
102
  // ============================================================================
87
103
  // Service tokens
88
104
  // ============================================================================
@@ -170,6 +186,25 @@ export const serviceTokenPurgeContract = defineApiContract({
170
186
  requestBodySchema: ContractNoBody,
171
187
  responsesByStatusCode: { 200: PurgeServiceTokensResponseSchema },
172
188
  });
189
+ /**
190
+ * Mint a short-lived token that acts as another account, for a backend service
191
+ * doing work a user started, such as a queued job.
192
+ *
193
+ * The bearer must be a service token holding the `delegate` claim, issued from
194
+ * an account that still holds it.
195
+ *
196
+ * @example
197
+ * ```ts
198
+ * import { serviceTokenDelegateContract } from '@game-infra/api-schemas-core'
199
+ * serviceTokenDelegateContract.pathResolver({}) // '/service-tokens/delegate'
200
+ * ```
201
+ */
202
+ export const serviceTokenDelegateContract = defineApiContract({
203
+ method: "post",
204
+ pathResolver: () => "/service-tokens/delegate",
205
+ requestBodySchema: DelegateServiceTokenRequestSchema,
206
+ responsesByStatusCode: { 200: DelegateServiceTokenResponseSchema },
207
+ });
173
208
  // ============================================================================
174
209
  // Account administration (admin claim required)
175
210
  // ============================================================================
@@ -1 +1 @@
1
- {"version":3,"file":"contracts.js","sourceRoot":"","sources":["../src/contracts.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"contracts.js","sourceRoot":"","sources":["../src/contracts.ts"],"names":[],"mappings":"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"}
package/dist/index.d.ts CHANGED
@@ -2,10 +2,10 @@ export { ApiResponseSchema, createSuccessResponseSchema, TimestampFieldsSchema,
2
2
  export type { ApiResponse, TimestampFields, EntityMetadata } from "./common.js";
3
3
  export { AI_PROVIDERS, AIProviderSchema } from "./aiProvider.js";
4
4
  export type { AIProviderType } from "./aiProvider.js";
5
- export { AuthValidation, RegisterRequestSchema, AuthResponseFieldsSchema, RegisterResponseSchema, LoginRequestSchema, LoginResponseSchema, ValidateTokenRequestSchema, ValidateTokenResponseSchema, ValidateServiceTokenResponseSchema, IdentityReadinessResponseSchema, } from "./auth.js";
6
- export type { RegisterRequest, RegisterResponse, LoginRequest, LoginResponse, ValidateTokenRequest, ValidateTokenResponse, ValidateServiceTokenResponse, IdentityReadinessResponse, } from "./auth.js";
7
- export { ServiceTokenValidation, ServiceTokenIdSchema, ServiceTokenSchema, CreateServiceTokenRequestSchema, CreateServiceTokenResponseSchema, ListServiceTokensResponseSchema, RevokeServiceTokenResponseSchema, ServiceTokenValidateRequestSchema, ServiceTokenRejectionSchema, ServiceTokenValidateResponseSchema, PurgeServiceTokensResponseSchema, } from "./serviceToken.js";
8
- export type { ServiceToken, CreateServiceTokenRequest, CreateServiceTokenResponse, ListServiceTokensResponse, RevokeServiceTokenResponse, ServiceTokenValidateRequest, ServiceTokenRejection, ServiceTokenValidateResponse, PurgeServiceTokensResponse, } from "./serviceToken.js";
5
+ export { AuthValidation, RegisterRequestSchema, AuthResponseFieldsSchema, RegisterResponseSchema, LoginRequestSchema, LoginResponseSchema, ValidateTokenRequestSchema, ValidateTokenResponseSchema, ValidateServiceTokenResponseSchema, IdentityReadinessResponseSchema, PublicJwkSchema, JwksResponseSchema, } from "./auth.js";
6
+ export type { RegisterRequest, RegisterResponse, LoginRequest, LoginResponse, ValidateTokenRequest, ValidateTokenResponse, ValidateServiceTokenResponse, IdentityReadinessResponse, JwksResponse, } from "./auth.js";
7
+ export { ServiceTokenValidation, DelegationValidation, ServiceTokenIdSchema, ServiceTokenSchema, CreateServiceTokenRequestSchema, CreateServiceTokenResponseSchema, ListServiceTokensResponseSchema, RevokeServiceTokenResponseSchema, ServiceTokenValidateRequestSchema, ServiceTokenRejectionSchema, ServiceTokenValidateResponseSchema, PurgeServiceTokensResponseSchema, DelegateServiceTokenRequestSchema, DelegateServiceTokenResponseSchema, } from "./serviceToken.js";
8
+ export type { ServiceToken, CreateServiceTokenRequest, CreateServiceTokenResponse, ListServiceTokensResponse, RevokeServiceTokenResponse, ServiceTokenValidateRequest, ServiceTokenRejection, ServiceTokenValidateResponse, PurgeServiceTokensResponse, DelegateServiceTokenRequest, DelegateServiceTokenResponse, } from "./serviceToken.js";
9
9
  export { UserAdminValidation, UserAccountSchema, ListUsersResponseSchema, CreateUserRequestSchema, UpdateUserRequestSchema, UserResponseSchema, DeleteUserResponseSchema, } from "./user.js";
10
10
  export type { UserAccount, ListUsersResponse, CreateUserRequest, UpdateUserRequest, UserResponse, DeleteUserResponse, } from "./user.js";
11
11
  export { BackupInfoSchema, TriggerBackupResponseSchema, ListBackupsResponseSchema, RestoreBackupRequestSchema, RestoreBackupResponseSchema, DownloadBackupResponseSchema, } from "./backup.js";
@@ -18,5 +18,5 @@ export { GameEntitySaveRequestSchema, GameEntitySaveResponseSchema, GameEntityLo
18
18
  export type { GameEntitySaveRequest, GameEntitySaveResponse, GameEntityLoadResponse, GameEntityInfo, GameEntityListResponse, GameEntityDeleteResponse, GameEntityBulkSaveRequest, GameEntityBulkSaveResponse, } from "./gameEntity.js";
19
19
  export { DEFAULT_DEVELOPMENT_API_URL, createApiUrlResolver } from "./apiConfig.js";
20
20
  export type { ApiUrlResolverOptions, ApiUrlResolver } from "./apiConfig.js";
21
- export { authRegisterContract, authLoginContract, authValidateContract, authValidateServiceTokenContract, identityReadinessContract, serviceTokenCreateContract, serviceTokenListContract, serviceTokenRevokeContract, serviceTokenValidateContract, serviceTokenPurgeContract, userListContract, userCreateContract, userUpdateContract, userDeleteContract, savegameSaveContract, savegameLoadContract, savegameListSlotsContract, gameEntitySaveContract, gameEntityUpdateContract, gameEntityLoadContract, gameEntityListContract, gameEntityListAllContract, gameEntityDeleteContract, gameEntityBulkSaveContract, backupTriggerContract, backupListContract, backupRestoreContract, backupDownloadContract, feedbackSubmitContract, heartbeatContract, } from "./contracts.js";
21
+ export { authRegisterContract, authLoginContract, authValidateContract, authValidateServiceTokenContract, identityReadinessContract, jwksContract, serviceTokenCreateContract, serviceTokenListContract, serviceTokenRevokeContract, serviceTokenValidateContract, serviceTokenPurgeContract, serviceTokenDelegateContract, userListContract, userCreateContract, userUpdateContract, userDeleteContract, savegameSaveContract, savegameLoadContract, savegameListSlotsContract, gameEntitySaveContract, gameEntityUpdateContract, gameEntityLoadContract, gameEntityListContract, gameEntityListAllContract, gameEntityDeleteContract, gameEntityBulkSaveContract, backupTriggerContract, backupListContract, backupRestoreContract, backupDownloadContract, feedbackSubmitContract, heartbeatContract, } from "./contracts.js";
22
22
  //# sourceMappingURL=index.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"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"}
package/dist/index.js CHANGED
@@ -3,9 +3,9 @@ export { ApiResponseSchema, createSuccessResponseSchema, TimestampFieldsSchema,
3
3
  // AI provider enum
4
4
  export { AI_PROVIDERS, AIProviderSchema } from "./aiProvider.js";
5
5
  // Auth
6
- export { AuthValidation, RegisterRequestSchema, AuthResponseFieldsSchema, RegisterResponseSchema, LoginRequestSchema, LoginResponseSchema, ValidateTokenRequestSchema, ValidateTokenResponseSchema, ValidateServiceTokenResponseSchema, IdentityReadinessResponseSchema, } from "./auth.js";
6
+ export { AuthValidation, RegisterRequestSchema, AuthResponseFieldsSchema, RegisterResponseSchema, LoginRequestSchema, LoginResponseSchema, ValidateTokenRequestSchema, ValidateTokenResponseSchema, ValidateServiceTokenResponseSchema, IdentityReadinessResponseSchema, PublicJwkSchema, JwksResponseSchema, } from "./auth.js";
7
7
  // Service tokens
8
- export { ServiceTokenValidation, ServiceTokenIdSchema, ServiceTokenSchema, CreateServiceTokenRequestSchema, CreateServiceTokenResponseSchema, ListServiceTokensResponseSchema, RevokeServiceTokenResponseSchema, ServiceTokenValidateRequestSchema, ServiceTokenRejectionSchema, ServiceTokenValidateResponseSchema, PurgeServiceTokensResponseSchema, } from "./serviceToken.js";
8
+ export { ServiceTokenValidation, DelegationValidation, ServiceTokenIdSchema, ServiceTokenSchema, CreateServiceTokenRequestSchema, CreateServiceTokenResponseSchema, ListServiceTokensResponseSchema, RevokeServiceTokenResponseSchema, ServiceTokenValidateRequestSchema, ServiceTokenRejectionSchema, ServiceTokenValidateResponseSchema, PurgeServiceTokensResponseSchema, DelegateServiceTokenRequestSchema, DelegateServiceTokenResponseSchema, } from "./serviceToken.js";
9
9
  // Account administration
10
10
  export { UserAdminValidation, UserAccountSchema, ListUsersResponseSchema, CreateUserRequestSchema, UpdateUserRequestSchema, UserResponseSchema, DeleteUserResponseSchema, } from "./user.js";
11
11
  // Backup
@@ -20,5 +20,5 @@ export { GameEntitySaveRequestSchema, GameEntitySaveResponseSchema, GameEntityLo
20
20
  export { DEFAULT_DEVELOPMENT_API_URL, createApiUrlResolver } from "./apiConfig.js";
21
21
  // Typed endpoint contracts (toad-contracts). Each contract carries its own
22
22
  // `pathResolver`; wire them into a client via @toad-contracts/frontend-http-client.
23
- export { authRegisterContract, authLoginContract, authValidateContract, authValidateServiceTokenContract, identityReadinessContract, serviceTokenCreateContract, serviceTokenListContract, serviceTokenRevokeContract, serviceTokenValidateContract, serviceTokenPurgeContract, userListContract, userCreateContract, userUpdateContract, userDeleteContract, savegameSaveContract, savegameLoadContract, savegameListSlotsContract, gameEntitySaveContract, gameEntityUpdateContract, gameEntityLoadContract, gameEntityListContract, gameEntityListAllContract, gameEntityDeleteContract, gameEntityBulkSaveContract, backupTriggerContract, backupListContract, backupRestoreContract, backupDownloadContract, feedbackSubmitContract, heartbeatContract, } from "./contracts.js";
23
+ export { authRegisterContract, authLoginContract, authValidateContract, authValidateServiceTokenContract, identityReadinessContract, jwksContract, serviceTokenCreateContract, serviceTokenListContract, serviceTokenRevokeContract, serviceTokenValidateContract, serviceTokenPurgeContract, serviceTokenDelegateContract, userListContract, userCreateContract, userUpdateContract, userDeleteContract, savegameSaveContract, savegameLoadContract, savegameListSlotsContract, gameEntitySaveContract, gameEntityUpdateContract, gameEntityLoadContract, gameEntityListContract, gameEntityListAllContract, gameEntityDeleteContract, gameEntityBulkSaveContract, backupTriggerContract, backupListContract, backupRestoreContract, backupDownloadContract, feedbackSubmitContract, heartbeatContract, } from "./contracts.js";
24
24
  //# sourceMappingURL=index.js.map
package/dist/index.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA,kDAAkD;AAClD,OAAO,EACL,iBAAiB,EACjB,2BAA2B,EAC3B,qBAAqB,EACrB,oBAAoB,GACrB,MAAM,aAAa,CAAC;AAGrB,mBAAmB;AACnB,OAAO,EAAE,YAAY,EAAE,gBAAgB,EAAE,MAAM,iBAAiB,CAAC;AAGjE,OAAO;AACP,OAAO,EACL,cAAc,EACd,qBAAqB,EACrB,wBAAwB,EACxB,sBAAsB,EACtB,kBAAkB,EAClB,mBAAmB,EACnB,0BAA0B,EAC1B,2BAA2B,EAC3B,kCAAkC,EAClC,+BAA+B,GAChC,MAAM,WAAW,CAAC;AAYnB,iBAAiB;AACjB,OAAO,EACL,sBAAsB,EACtB,oBAAoB,EACpB,kBAAkB,EAClB,+BAA+B,EAC/B,gCAAgC,EAChC,+BAA+B,EAC/B,gCAAgC,EAChC,iCAAiC,EACjC,2BAA2B,EAC3B,kCAAkC,EAClC,gCAAgC,GACjC,MAAM,mBAAmB,CAAC;AAa3B,yBAAyB;AACzB,OAAO,EACL,mBAAmB,EACnB,iBAAiB,EACjB,uBAAuB,EACvB,uBAAuB,EACvB,uBAAuB,EACvB,kBAAkB,EAClB,wBAAwB,GACzB,MAAM,WAAW,CAAC;AAUnB,SAAS;AACT,OAAO,EACL,gBAAgB,EAChB,2BAA2B,EAC3B,yBAAyB,EACzB,0BAA0B,EAC1B,2BAA2B,EAC3B,4BAA4B,GAC7B,MAAM,aAAa,CAAC;AAUrB,WAAW;AACX,OAAO,EACL,YAAY,EACZ,2BAA2B,EAC3B,4BAA4B,GAC7B,MAAM,eAAe,CAAC;AAGvB,WAAW;AACX,OAAO,EACL,yBAAyB,EACzB,0BAA0B,EAC1B,0BAA0B,EAC1B,cAAc,EACd,+BAA+B,GAChC,MAAM,eAAe,CAAC;AASvB,gBAAgB;AAChB,OAAO,EACL,2BAA2B,EAC3B,4BAA4B,EAC5B,4BAA4B,EAC5B,oBAAoB,EACpB,4BAA4B,EAC5B,8BAA8B,EAC9B,+BAA+B,EAC/B,gCAAgC,GACjC,MAAM,iBAAiB,CAAC;AAYzB,2BAA2B;AAC3B,OAAO,EAAE,2BAA2B,EAAE,oBAAoB,EAAE,MAAM,gBAAgB,CAAC;AAGnF,2EAA2E;AAC3E,oFAAoF;AAEpF,OAAO,EACL,oBAAoB,EACpB,iBAAiB,EACjB,oBAAoB,EACpB,gCAAgC,EAChC,yBAAyB,EACzB,0BAA0B,EAC1B,wBAAwB,EACxB,0BAA0B,EAC1B,4BAA4B,EAC5B,yBAAyB,EACzB,gBAAgB,EAChB,kBAAkB,EAClB,kBAAkB,EAClB,kBAAkB,EAClB,oBAAoB,EACpB,oBAAoB,EACpB,yBAAyB,EACzB,sBAAsB,EACtB,wBAAwB,EACxB,sBAAsB,EACtB,sBAAsB,EACtB,yBAAyB,EACzB,wBAAwB,EACxB,0BAA0B,EAC1B,qBAAqB,EACrB,kBAAkB,EAClB,qBAAqB,EACrB,sBAAsB,EACtB,sBAAsB,EACtB,iBAAiB,GAClB,MAAM,gBAAgB,CAAC"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA,kDAAkD;AAClD,OAAO,EACL,iBAAiB,EACjB,2BAA2B,EAC3B,qBAAqB,EACrB,oBAAoB,GACrB,MAAM,aAAa,CAAC;AAGrB,mBAAmB;AACnB,OAAO,EAAE,YAAY,EAAE,gBAAgB,EAAE,MAAM,iBAAiB,CAAC;AAGjE,OAAO;AACP,OAAO,EACL,cAAc,EACd,qBAAqB,EACrB,wBAAwB,EACxB,sBAAsB,EACtB,kBAAkB,EAClB,mBAAmB,EACnB,0BAA0B,EAC1B,2BAA2B,EAC3B,kCAAkC,EAClC,+BAA+B,EAC/B,eAAe,EACf,kBAAkB,GACnB,MAAM,WAAW,CAAC;AAanB,iBAAiB;AACjB,OAAO,EACL,sBAAsB,EACtB,oBAAoB,EACpB,oBAAoB,EACpB,kBAAkB,EAClB,+BAA+B,EAC/B,gCAAgC,EAChC,+BAA+B,EAC/B,gCAAgC,EAChC,iCAAiC,EACjC,2BAA2B,EAC3B,kCAAkC,EAClC,gCAAgC,EAChC,iCAAiC,EACjC,kCAAkC,GACnC,MAAM,mBAAmB,CAAC;AAe3B,yBAAyB;AACzB,OAAO,EACL,mBAAmB,EACnB,iBAAiB,EACjB,uBAAuB,EACvB,uBAAuB,EACvB,uBAAuB,EACvB,kBAAkB,EAClB,wBAAwB,GACzB,MAAM,WAAW,CAAC;AAUnB,SAAS;AACT,OAAO,EACL,gBAAgB,EAChB,2BAA2B,EAC3B,yBAAyB,EACzB,0BAA0B,EAC1B,2BAA2B,EAC3B,4BAA4B,GAC7B,MAAM,aAAa,CAAC;AAUrB,WAAW;AACX,OAAO,EACL,YAAY,EACZ,2BAA2B,EAC3B,4BAA4B,GAC7B,MAAM,eAAe,CAAC;AAGvB,WAAW;AACX,OAAO,EACL,yBAAyB,EACzB,0BAA0B,EAC1B,0BAA0B,EAC1B,cAAc,EACd,+BAA+B,GAChC,MAAM,eAAe,CAAC;AASvB,gBAAgB;AAChB,OAAO,EACL,2BAA2B,EAC3B,4BAA4B,EAC5B,4BAA4B,EAC5B,oBAAoB,EACpB,4BAA4B,EAC5B,8BAA8B,EAC9B,+BAA+B,EAC/B,gCAAgC,GACjC,MAAM,iBAAiB,CAAC;AAYzB,2BAA2B;AAC3B,OAAO,EAAE,2BAA2B,EAAE,oBAAoB,EAAE,MAAM,gBAAgB,CAAC;AAGnF,2EAA2E;AAC3E,oFAAoF;AAEpF,OAAO,EACL,oBAAoB,EACpB,iBAAiB,EACjB,oBAAoB,EACpB,gCAAgC,EAChC,yBAAyB,EACzB,YAAY,EACZ,0BAA0B,EAC1B,wBAAwB,EACxB,0BAA0B,EAC1B,4BAA4B,EAC5B,yBAAyB,EACzB,4BAA4B,EAC5B,gBAAgB,EAChB,kBAAkB,EAClB,kBAAkB,EAClB,kBAAkB,EAClB,oBAAoB,EACpB,oBAAoB,EACpB,yBAAyB,EACzB,sBAAsB,EACtB,wBAAwB,EACxB,sBAAsB,EACtB,sBAAsB,EACtB,yBAAyB,EACzB,wBAAwB,EACxB,0BAA0B,EAC1B,qBAAqB,EACrB,kBAAkB,EAClB,qBAAqB,EACrB,sBAAsB,EACtB,sBAAsB,EACtB,iBAAiB,GAClB,MAAM,gBAAgB,CAAC"}
@@ -390,4 +390,92 @@ export declare const PurgeServiceTokensResponseSchema: import("valibot").ObjectS
390
390
  * ```
391
391
  */
392
392
  export type PurgeServiceTokensResponse = InferOutput<typeof PurgeServiceTokensResponseSchema>;
393
+ /**
394
+ * Bounds for delegated tokens: short-lived tokens a backend service obtains to
395
+ * act as one of its users while that user is not making the request, such as a
396
+ * queued job the user started.
397
+ *
398
+ * The caller must present a service token whose own claims and whose account
399
+ * both hold {@link DelegationValidation.DELEGATE_CLAIM}. That claim lets the
400
+ * caller act as any account, so grant it only to a service's own account.
401
+ *
402
+ * @example
403
+ * ```ts
404
+ * import { DelegationValidation } from '@game-infra/api-schemas-core'
405
+ *
406
+ * const ttl = DelegationValidation.DEFAULT_TTL_SECONDS
407
+ * ```
408
+ */
409
+ export declare const DelegationValidation: {
410
+ /** The claim that allows a service token to request delegated tokens. */
411
+ readonly DELEGATE_CLAIM: "delegate";
412
+ /** One minute. */
413
+ readonly MIN_TTL_SECONDS: 60;
414
+ /** One hour. A job that runs longer asks again. */
415
+ readonly MAX_TTL_SECONDS: number;
416
+ /** Fifteen minutes. */
417
+ readonly DEFAULT_TTL_SECONDS: number;
418
+ };
419
+ /**
420
+ * Request for a delegated token that acts as `userId`.
421
+ *
422
+ * @example
423
+ * ```ts
424
+ * import { DelegateServiceTokenRequestSchema } from '@game-infra/api-schemas-core'
425
+ * import { parse } from 'valibot'
426
+ *
427
+ * parse(DelegateServiceTokenRequestSchema, { userId: 42, ttlSeconds: 1200 })
428
+ * ```
429
+ */
430
+ export declare const DelegateServiceTokenRequestSchema: import("valibot").ObjectSchema<{
431
+ /** The account the token acts as. Legacy accounts have negative ids. */
432
+ readonly userId: import("valibot").SchemaWithPipe<readonly [import("valibot").NumberSchema<undefined>, import("valibot").IntegerAction<number, "userId must be an account id">]>;
433
+ readonly ttlSeconds: import("valibot").OptionalSchema<import("valibot").SchemaWithPipe<readonly [import("valibot").NumberSchema<undefined>, import("valibot").IntegerAction<number, "TTL must be a whole number of seconds">, import("valibot").MinValueAction<number, 60, undefined>, import("valibot").MaxValueAction<number, number, undefined>]>, undefined>;
434
+ }, undefined>;
435
+ /**
436
+ * Inferred delegated-token request.
437
+ *
438
+ * @example
439
+ * ```ts
440
+ * import type { DelegateServiceTokenRequest } from '@game-infra/api-schemas-core'
441
+ *
442
+ * const request: DelegateServiceTokenRequest = { userId: 42 }
443
+ * ```
444
+ */
445
+ export type DelegateServiceTokenRequest = InferOutput<typeof DelegateServiceTokenRequestSchema>;
446
+ /**
447
+ * A delegated token and when it expires.
448
+ *
449
+ * The token has `tokenType: "service"`, the target account's `userId` and
450
+ * `username`, no claims and no `jti`. Without a `jti` it is not recorded, so it
451
+ * cannot be revoked and `/auth/validate` and `/service-tokens/validate` reject
452
+ * it; it stops working when it expires. Services that verify tokens locally
453
+ * against the JWKS accept it.
454
+ *
455
+ * @example
456
+ * ```ts
457
+ * import type { DelegateServiceTokenResponse } from '@game-infra/api-schemas-core'
458
+ *
459
+ * const bearer = (response: DelegateServiceTokenResponse) => response.token
460
+ * ```
461
+ */
462
+ export declare const DelegateServiceTokenResponseSchema: import("valibot").ObjectSchema<{
463
+ readonly success: import("valibot").BooleanSchema<undefined>;
464
+ readonly error: import("valibot").OptionalSchema<import("valibot").StringSchema<undefined>, undefined>;
465
+ } & {
466
+ token: import("valibot").OptionalSchema<import("valibot").StringSchema<undefined>, undefined>;
467
+ /** ISO-8601 expiry, whole seconds. */
468
+ expiresAt: import("valibot").OptionalSchema<import("valibot").StringSchema<undefined>, undefined>;
469
+ }, undefined>;
470
+ /**
471
+ * Inferred delegated-token response.
472
+ *
473
+ * @example
474
+ * ```ts
475
+ * import type { DelegateServiceTokenResponse } from '@game-infra/api-schemas-core'
476
+ *
477
+ * const ok: DelegateServiceTokenResponse['success'] = true
478
+ * ```
479
+ */
480
+ export type DelegateServiceTokenResponse = InferOutput<typeof DelegateServiceTokenResponseSchema>;
393
481
  //# sourceMappingURL=serviceToken.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"serviceToken.d.ts","sourceRoot":"","sources":["../src/serviceToken.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"serviceToken.d.ts","sourceRoot":"","sources":["../src/serviceToken.ts"],"names":[],"mappings":"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"}
@@ -224,4 +224,67 @@ export const PurgeServiceTokensResponseSchema = createSuccessResponseSchema({
224
224
  /** Retention window applied, in seconds, so a caller can explain the count. */
225
225
  retentionSeconds: optional(number()),
226
226
  });
227
+ /**
228
+ * Bounds for delegated tokens: short-lived tokens a backend service obtains to
229
+ * act as one of its users while that user is not making the request, such as a
230
+ * queued job the user started.
231
+ *
232
+ * The caller must present a service token whose own claims and whose account
233
+ * both hold {@link DelegationValidation.DELEGATE_CLAIM}. That claim lets the
234
+ * caller act as any account, so grant it only to a service's own account.
235
+ *
236
+ * @example
237
+ * ```ts
238
+ * import { DelegationValidation } from '@game-infra/api-schemas-core'
239
+ *
240
+ * const ttl = DelegationValidation.DEFAULT_TTL_SECONDS
241
+ * ```
242
+ */
243
+ export const DelegationValidation = {
244
+ /** The claim that allows a service token to request delegated tokens. */
245
+ DELEGATE_CLAIM: "delegate",
246
+ /** One minute. */
247
+ MIN_TTL_SECONDS: 60,
248
+ /** One hour. A job that runs longer asks again. */
249
+ MAX_TTL_SECONDS: 60 * 60,
250
+ /** Fifteen minutes. */
251
+ DEFAULT_TTL_SECONDS: 15 * 60,
252
+ };
253
+ /**
254
+ * Request for a delegated token that acts as `userId`.
255
+ *
256
+ * @example
257
+ * ```ts
258
+ * import { DelegateServiceTokenRequestSchema } from '@game-infra/api-schemas-core'
259
+ * import { parse } from 'valibot'
260
+ *
261
+ * parse(DelegateServiceTokenRequestSchema, { userId: 42, ttlSeconds: 1200 })
262
+ * ```
263
+ */
264
+ export const DelegateServiceTokenRequestSchema = object({
265
+ /** The account the token acts as. Legacy accounts have negative ids. */
266
+ userId: pipe(number(), integer("userId must be an account id")),
267
+ ttlSeconds: optional(pipe(number(), integer("TTL must be a whole number of seconds"), minValue(DelegationValidation.MIN_TTL_SECONDS), maxValue(DelegationValidation.MAX_TTL_SECONDS))),
268
+ });
269
+ /**
270
+ * A delegated token and when it expires.
271
+ *
272
+ * The token has `tokenType: "service"`, the target account's `userId` and
273
+ * `username`, no claims and no `jti`. Without a `jti` it is not recorded, so it
274
+ * cannot be revoked and `/auth/validate` and `/service-tokens/validate` reject
275
+ * it; it stops working when it expires. Services that verify tokens locally
276
+ * against the JWKS accept it.
277
+ *
278
+ * @example
279
+ * ```ts
280
+ * import type { DelegateServiceTokenResponse } from '@game-infra/api-schemas-core'
281
+ *
282
+ * const bearer = (response: DelegateServiceTokenResponse) => response.token
283
+ * ```
284
+ */
285
+ export const DelegateServiceTokenResponseSchema = createSuccessResponseSchema({
286
+ token: optional(string()),
287
+ /** ISO-8601 expiry, whole seconds. */
288
+ expiresAt: optional(string()),
289
+ });
227
290
  //# sourceMappingURL=serviceToken.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"serviceToken.js","sourceRoot":"","sources":["../src/serviceToken.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"serviceToken.js","sourceRoot":"","sources":["../src/serviceToken.ts"],"names":[],"mappings":"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"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@game-infra/api-schemas-core",
3
- "version": "0.4.0",
3
+ "version": "0.6.0",
4
4
  "description": "Generic service API contract: auth, savegame, game-entity, backup, feedback, heartbeat schemas + toad-contracts endpoint definitions",
5
5
  "homepage": "https://github.com/kibertoad/game-infra/tree/main/packages/schemas/api-schemas-core#readme",
6
6
  "bugs": {