@gaganref/convex-api-keys 0.1.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.
Files changed (102) hide show
  1. package/LICENSE +201 -0
  2. package/README.md +419 -0
  3. package/dist/client/_generated/_ignore.d.ts +1 -0
  4. package/dist/client/_generated/_ignore.d.ts.map +1 -0
  5. package/dist/client/_generated/_ignore.js +3 -0
  6. package/dist/client/_generated/_ignore.js.map +1 -0
  7. package/dist/client/crypto.d.ts +4 -0
  8. package/dist/client/crypto.d.ts.map +1 -0
  9. package/dist/client/crypto.js +48 -0
  10. package/dist/client/crypto.js.map +1 -0
  11. package/dist/client/errors.d.ts +32 -0
  12. package/dist/client/errors.d.ts.map +1 -0
  13. package/dist/client/errors.js +43 -0
  14. package/dist/client/errors.js.map +1 -0
  15. package/dist/client/index.d.ts +7 -0
  16. package/dist/client/index.d.ts.map +1 -0
  17. package/dist/client/index.js +4 -0
  18. package/dist/client/index.js.map +1 -0
  19. package/dist/client/operations.d.ts +240 -0
  20. package/dist/client/operations.d.ts.map +1 -0
  21. package/dist/client/operations.js +700 -0
  22. package/dist/client/operations.js.map +1 -0
  23. package/dist/client/options.d.ts +79 -0
  24. package/dist/client/options.d.ts.map +1 -0
  25. package/dist/client/options.js +51 -0
  26. package/dist/client/options.js.map +1 -0
  27. package/dist/client/types.d.ts +269 -0
  28. package/dist/client/types.d.ts.map +1 -0
  29. package/dist/client/types.js +24 -0
  30. package/dist/client/types.js.map +1 -0
  31. package/dist/component/_generated/api.d.ts +40 -0
  32. package/dist/component/_generated/api.d.ts.map +1 -0
  33. package/dist/component/_generated/api.js +31 -0
  34. package/dist/component/_generated/api.js.map +1 -0
  35. package/dist/component/_generated/component.d.ts +253 -0
  36. package/dist/component/_generated/component.d.ts.map +1 -0
  37. package/dist/component/_generated/component.js +11 -0
  38. package/dist/component/_generated/component.js.map +1 -0
  39. package/dist/component/_generated/dataModel.d.ts +46 -0
  40. package/dist/component/_generated/dataModel.d.ts.map +1 -0
  41. package/dist/component/_generated/dataModel.js +11 -0
  42. package/dist/component/_generated/dataModel.js.map +1 -0
  43. package/dist/component/_generated/server.d.ts +121 -0
  44. package/dist/component/_generated/server.d.ts.map +1 -0
  45. package/dist/component/_generated/server.js +78 -0
  46. package/dist/component/_generated/server.js.map +1 -0
  47. package/dist/component/cleanup.d.ts +29 -0
  48. package/dist/component/cleanup.d.ts.map +1 -0
  49. package/dist/component/cleanup.js +70 -0
  50. package/dist/component/cleanup.js.map +1 -0
  51. package/dist/component/convex.config.d.ts +3 -0
  52. package/dist/component/convex.config.d.ts.map +1 -0
  53. package/dist/component/convex.config.js +3 -0
  54. package/dist/component/convex.config.js.map +1 -0
  55. package/dist/component/crons.d.ts +3 -0
  56. package/dist/component/crons.d.ts.map +1 -0
  57. package/dist/component/crons.js +7 -0
  58. package/dist/component/crons.js.map +1 -0
  59. package/dist/component/lib.d.ts +323 -0
  60. package/dist/component/lib.d.ts.map +1 -0
  61. package/dist/component/lib.js +659 -0
  62. package/dist/component/lib.js.map +1 -0
  63. package/dist/component/schema.d.ts +82 -0
  64. package/dist/component/schema.d.ts.map +1 -0
  65. package/dist/component/schema.js +38 -0
  66. package/dist/component/schema.js.map +1 -0
  67. package/dist/component/sweep.d.ts +27 -0
  68. package/dist/component/sweep.d.ts.map +1 -0
  69. package/dist/component/sweep.js +94 -0
  70. package/dist/component/sweep.js.map +1 -0
  71. package/dist/shared.d.ts +11 -0
  72. package/dist/shared.d.ts.map +1 -0
  73. package/dist/shared.js +11 -0
  74. package/dist/shared.js.map +1 -0
  75. package/package.json +116 -0
  76. package/src/client/__tests__/contracts.test.ts +109 -0
  77. package/src/client/__tests__/errors.test.ts +133 -0
  78. package/src/client/__tests__/hooks.test.ts +154 -0
  79. package/src/client/__tests__/operations.test.ts +742 -0
  80. package/src/client/__tests__/setup.test.ts +31 -0
  81. package/src/client/_generated/_ignore.ts +1 -0
  82. package/src/client/crypto.ts +64 -0
  83. package/src/client/errors.ts +67 -0
  84. package/src/client/index.ts +44 -0
  85. package/src/client/operations.ts +881 -0
  86. package/src/client/options.ts +146 -0
  87. package/src/client/types.ts +313 -0
  88. package/src/component/__tests__/cleanup.test.ts +472 -0
  89. package/src/component/__tests__/lib.test.ts +676 -0
  90. package/src/component/__tests__/setup.test.ts +11 -0
  91. package/src/component/_generated/api.ts +56 -0
  92. package/src/component/_generated/component.ts +300 -0
  93. package/src/component/_generated/dataModel.ts +60 -0
  94. package/src/component/_generated/server.ts +156 -0
  95. package/src/component/cleanup.ts +85 -0
  96. package/src/component/convex.config.ts +3 -0
  97. package/src/component/crons.ts +20 -0
  98. package/src/component/lib.ts +843 -0
  99. package/src/component/schema.ts +49 -0
  100. package/src/component/sweep.ts +117 -0
  101. package/src/shared.ts +18 -0
  102. package/src/test.ts +18 -0
@@ -0,0 +1 @@
1
+ {"version":3,"file":"cleanup.js","sourceRoot":"","sources":["../../src/component/cleanup.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,QAAQ,EAAE,MAAM,wBAAwB,CAAC;AAElD,OAAO,EAAE,GAAG,EAAE,MAAM,qBAAqB,CAAC;AAC1C,OAAO,EAAE,CAAC,EAAE,WAAW,EAAE,MAAM,eAAe,CAAC;AAG/C,MAAM,UAAU,GAAG,GAAG,CAAC;AAEvB;;;;;;;;;;;;;;;;;;;;;GAqBG;AACH,MAAM,CAAC,MAAM,cAAc,GAAG,QAAQ,CAAC;IACrC,IAAI,EAAE,EAAE,WAAW,EAAE,CAAC,CAAC,MAAM,EAAE,EAAE;IACjC,OAAO,EAAE,CAAC,CAAC,MAAM,CAAC;QAChB,OAAO,EAAE,CAAC,CAAC,MAAM,EAAE;QACnB,MAAM,EAAE,CAAC,CAAC,OAAO,EAAE;KACpB,CAAC;IACF,OAAO,EAAE,KAAK,EAAE,GAAG,EAAE,EAAE,WAAW,EAAE,EAAE,EAAE;QACtC,IAAI,CAAC,MAAM,CAAC,QAAQ,CAAC,WAAW,CAAC,IAAI,WAAW,IAAI,CAAC,EAAE,CAAC;YACtD,MAAM,IAAI,WAAW,CAAC;gBACpB,IAAI,EAAE,kBAAkB;gBACxB,OAAO,EAAE,qDAAqD,WAAW,EAAE;aAC5E,CAAC,CAAC;QACL,CAAC;QAED,MAAM,MAAM,GAAG,IAAI,CAAC,GAAG,EAAE,GAAG,WAAW,CAAC;QAExC,wEAAwE;QACxE,8DAA8D;QAC9D,MAAM,WAAW,GAAG,MAAM,GAAG,CAAC,EAAE;aAC7B,KAAK,CAAC,SAAS,CAAC;aAChB,SAAS,CAAC,eAAe,EAAE,CAAC,CAAC,EAAE,EAAE,CAChC,CAAC,CAAC,GAAG,CAAC,WAAW,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC,WAAW,EAAE,MAAM,CAAC,CAC9C;aACA,IAAI,CAAC,UAAU,CAAC,CAAC;QAEpB,KAAK,MAAM,GAAG,IAAI,WAAW,EAAE,CAAC;YAC9B,MAAM,kBAAkB,CAAC,GAAG,EAAE,GAAG,CAAC,GAAG,CAAC,CAAC;QACzC,CAAC;QAED,MAAM,OAAO,GAAG,WAAW,CAAC,MAAM,CAAC;QACnC,MAAM,MAAM,GAAG,WAAW,CAAC,MAAM,GAAG,UAAU,CAAC;QAE/C,IAAI,CAAC,MAAM,EAAE,CAAC;YACZ,MAAM,GAAG,CAAC,SAAS,CAAC,QAAQ,CAAC,CAAC,EAAE,GAAG,CAAC,OAAO,CAAC,cAAc,EAAE;gBAC1D,WAAW;aACZ,CAAC,CAAC;QACL,CAAC;QAED,OAAO,EAAE,OAAO,EAAE,MAAM,EAAE,CAAC;IAC7B,CAAC;CACF,CAAC,CAAC;AAEH,KAAK,UAAU,kBAAkB,CAC/B,GAAgB,EAChB,KAAoB;IAEpB,MAAM,MAAM,GAAG,MAAM,GAAG,CAAC,EAAE;SACxB,KAAK,CAAC,cAAc,CAAC;SACrB,SAAS,CAAC,WAAW,EAAE,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC,OAAO,EAAE,KAAK,CAAC,CAAC;SACnD,OAAO,EAAE,CAAC;IACb,KAAK,MAAM,KAAK,IAAI,MAAM,EAAE,CAAC;QAC3B,MAAM,GAAG,CAAC,EAAE,CAAC,MAAM,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC;IACjC,CAAC;IACD,MAAM,GAAG,CAAC,EAAE,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC;AAC7B,CAAC"}
@@ -0,0 +1,3 @@
1
+ declare const _default: import("convex/server").ComponentDefinition<any>;
2
+ export default _default;
3
+ //# sourceMappingURL=convex.config.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"convex.config.d.ts","sourceRoot":"","sources":["../../src/component/convex.config.ts"],"names":[],"mappings":";AAEA,wBAA0C"}
@@ -0,0 +1,3 @@
1
+ import { defineComponent } from "convex/server";
2
+ export default defineComponent("apiKeys");
3
+ //# sourceMappingURL=convex.config.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"convex.config.js","sourceRoot":"","sources":["../../src/component/convex.config.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,eAAe,EAAE,MAAM,eAAe,CAAC;AAEhD,eAAe,eAAe,CAAC,SAAS,CAAC,CAAC"}
@@ -0,0 +1,3 @@
1
+ declare const crons: import("convex/server").Crons;
2
+ export default crons;
3
+ //# sourceMappingURL=crons.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"crons.d.ts","sourceRoot":"","sources":["../../src/component/crons.ts"],"names":[],"mappings":"AAGA,QAAA,MAAM,KAAK,+BAAa,CAAC;AAgBzB,eAAe,KAAK,CAAC"}
@@ -0,0 +1,7 @@
1
+ import { cronJobs } from "convex/server";
2
+ import { internal } from "./_generated/api.js";
3
+ const crons = cronJobs();
4
+ crons.interval("sweep expired api keys", { hours: 1 }, internal.sweep.sweepExpired, {});
5
+ crons.interval("sweep idle expired api keys", { hours: 1 }, internal.sweep.sweepIdleExpired, {});
6
+ export default crons;
7
+ //# sourceMappingURL=crons.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"crons.js","sourceRoot":"","sources":["../../src/component/crons.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,QAAQ,EAAE,MAAM,eAAe,CAAC;AACzC,OAAO,EAAE,QAAQ,EAAE,MAAM,qBAAqB,CAAC;AAE/C,MAAM,KAAK,GAAG,QAAQ,EAAE,CAAC;AAEzB,KAAK,CAAC,QAAQ,CACZ,wBAAwB,EACxB,EAAE,KAAK,EAAE,CAAC,EAAE,EACZ,QAAQ,CAAC,KAAK,CAAC,YAAY,EAC3B,EAAE,CACH,CAAC;AAEF,KAAK,CAAC,QAAQ,CACZ,6BAA6B,EAC7B,EAAE,KAAK,EAAE,CAAC,EAAE,EACZ,QAAQ,CAAC,KAAK,CAAC,gBAAgB,EAC/B,EAAE,CACH,CAAC;AAEF,eAAe,KAAK,CAAC"}
@@ -0,0 +1,323 @@
1
+ type EffectiveStatus = "active" | "revoked" | "expired" | "idle_timeout";
2
+ /**
3
+ * Creates a new key record and emits a creation audit event.
4
+ */
5
+ export declare const create: import("convex/server").RegisteredMutation<"public", {
6
+ expiresAt?: number | undefined;
7
+ logLevel?: "debug" | "warn" | "error" | "none" | undefined;
8
+ maxIdleMs?: number | undefined;
9
+ metadata?: Record<string, any> | undefined;
10
+ name?: string | undefined;
11
+ namespace?: string | undefined;
12
+ permissions?: Record<string, string[]> | undefined;
13
+ tokenHash: string;
14
+ tokenLast4: string;
15
+ tokenPrefix: string;
16
+ }, Promise<{
17
+ keyId: import("convex/values").GenericId<"apiKeys">;
18
+ createdAt: number;
19
+ }>>;
20
+ /**
21
+ * Validates a token hash and returns the matching active key.
22
+ */
23
+ export declare const validate: import("convex/server").RegisteredQuery<"public", {
24
+ logLevel?: "debug" | "warn" | "error" | "none" | undefined;
25
+ tokenHash: string;
26
+ now: number;
27
+ }, Promise<{
28
+ ok: false;
29
+ reason: "not_found";
30
+ keyId?: undefined;
31
+ namespace?: undefined;
32
+ name?: undefined;
33
+ permissions?: undefined;
34
+ metadata?: undefined;
35
+ } | {
36
+ ok: false;
37
+ reason: "revoked" | "expired" | "idle_timeout";
38
+ keyId?: undefined;
39
+ namespace?: undefined;
40
+ name?: undefined;
41
+ permissions?: undefined;
42
+ metadata?: undefined;
43
+ } | {
44
+ ok: true;
45
+ keyId: import("convex/values").GenericId<"apiKeys">;
46
+ namespace: string | undefined;
47
+ name: string | undefined;
48
+ permissions: Record<string, string[]> | undefined;
49
+ metadata: Record<string, any> | undefined;
50
+ reason?: undefined;
51
+ }>>;
52
+ /**
53
+ * Marks a key as recently used and extends idle expiry when configured.
54
+ */
55
+ export declare const touch: import("convex/server").RegisteredMutation<"public", {
56
+ keyId: import("convex/values").GenericId<"apiKeys">;
57
+ now: number;
58
+ }, Promise<{
59
+ ok: false;
60
+ reason: "not_found";
61
+ keyId?: undefined;
62
+ touchedAt?: undefined;
63
+ } | {
64
+ ok: false;
65
+ reason: "revoked" | "expired" | "idle_timeout";
66
+ keyId?: undefined;
67
+ touchedAt?: undefined;
68
+ } | {
69
+ ok: true;
70
+ keyId: import("convex/values").GenericId<"apiKeys">;
71
+ touchedAt: number;
72
+ reason?: undefined;
73
+ }>>;
74
+ /**
75
+ * Lists API keys with derived effective status.
76
+ */
77
+ export declare const listKeys: import("convex/server").RegisteredQuery<"public", {
78
+ namespace?: string | undefined;
79
+ order?: "asc" | "desc" | undefined;
80
+ status?: "active" | "revoked" | undefined;
81
+ now: number;
82
+ paginationOpts: {
83
+ id?: number;
84
+ endCursor?: string | null;
85
+ maximumRowsRead?: number;
86
+ maximumBytesRead?: number;
87
+ numItems: number;
88
+ cursor: string | null;
89
+ };
90
+ }, Promise<{
91
+ isDone: boolean;
92
+ continueCursor: string;
93
+ page: {
94
+ keyId: import("convex/values").GenericId<"apiKeys">;
95
+ namespace: string | undefined;
96
+ name: string | undefined;
97
+ tokenPrefix: string;
98
+ tokenLast4: string;
99
+ permissions: Record<string, string[]> | undefined;
100
+ metadata: Record<string, any> | undefined;
101
+ status: "active" | "revoked";
102
+ effectiveStatus: EffectiveStatus;
103
+ createdAt: number;
104
+ updatedAt: number;
105
+ lastUsedAt: number;
106
+ expiresAt: number | undefined;
107
+ maxIdleMs: number | undefined;
108
+ revokedAt: number | undefined;
109
+ revocationReason: string | undefined;
110
+ replaces: import("convex/values").GenericId<"apiKeys"> | undefined;
111
+ }[];
112
+ }>>;
113
+ /**
114
+ * Fetches a single API key by ID with its derived effective status.
115
+ */
116
+ export declare const getKey: import("convex/server").RegisteredQuery<"public", {
117
+ keyId: import("convex/values").GenericId<"apiKeys">;
118
+ now: number;
119
+ }, Promise<{
120
+ ok: false;
121
+ reason: "not_found";
122
+ keyId?: undefined;
123
+ namespace?: undefined;
124
+ name?: undefined;
125
+ tokenPrefix?: undefined;
126
+ tokenLast4?: undefined;
127
+ permissions?: undefined;
128
+ metadata?: undefined;
129
+ status?: undefined;
130
+ effectiveStatus?: undefined;
131
+ createdAt?: undefined;
132
+ updatedAt?: undefined;
133
+ lastUsedAt?: undefined;
134
+ expiresAt?: undefined;
135
+ maxIdleMs?: undefined;
136
+ revokedAt?: undefined;
137
+ revocationReason?: undefined;
138
+ replaces?: undefined;
139
+ } | {
140
+ ok: true;
141
+ keyId: import("convex/values").GenericId<"apiKeys">;
142
+ namespace: string | undefined;
143
+ name: string | undefined;
144
+ tokenPrefix: string;
145
+ tokenLast4: string;
146
+ permissions: Record<string, string[]> | undefined;
147
+ metadata: Record<string, any> | undefined;
148
+ status: "active" | "revoked";
149
+ effectiveStatus: EffectiveStatus;
150
+ createdAt: number;
151
+ updatedAt: number;
152
+ lastUsedAt: number;
153
+ expiresAt: number | undefined;
154
+ maxIdleMs: number | undefined;
155
+ revokedAt: number | undefined;
156
+ revocationReason: string | undefined;
157
+ replaces: import("convex/values").GenericId<"apiKeys"> | undefined;
158
+ reason?: undefined;
159
+ }>>;
160
+ /**
161
+ * Lists audit events for a single key.
162
+ */
163
+ export declare const listKeyEvents: import("convex/server").RegisteredQuery<"public", {
164
+ order?: "asc" | "desc" | undefined;
165
+ keyId: import("convex/values").GenericId<"apiKeys">;
166
+ paginationOpts: {
167
+ id?: number;
168
+ endCursor?: string | null;
169
+ maximumRowsRead?: number;
170
+ maximumBytesRead?: number;
171
+ numItems: number;
172
+ cursor: string | null;
173
+ };
174
+ }, Promise<{
175
+ isDone: boolean;
176
+ continueCursor: string;
177
+ page: {
178
+ eventId: import("convex/values").GenericId<"apiKeyEvents">;
179
+ keyId: import("convex/values").GenericId<"apiKeys">;
180
+ namespace: string | undefined;
181
+ type: "revoked" | "created" | "rotated";
182
+ reason: string | undefined;
183
+ metadata: Record<string, any> | undefined;
184
+ createdAt: number;
185
+ }[];
186
+ }>>;
187
+ /**
188
+ * Lists audit events across all keys, optionally scoped by namespace.
189
+ */
190
+ export declare const listEvents: import("convex/server").RegisteredQuery<"public", {
191
+ namespace?: string | undefined;
192
+ order?: "asc" | "desc" | undefined;
193
+ paginationOpts: {
194
+ id?: number;
195
+ endCursor?: string | null;
196
+ maximumRowsRead?: number;
197
+ maximumBytesRead?: number;
198
+ numItems: number;
199
+ cursor: string | null;
200
+ };
201
+ }, Promise<{
202
+ isDone: boolean;
203
+ continueCursor: string;
204
+ page: {
205
+ eventId: import("convex/values").GenericId<"apiKeyEvents">;
206
+ keyId: import("convex/values").GenericId<"apiKeys">;
207
+ namespace: string | undefined;
208
+ type: "revoked" | "created" | "rotated";
209
+ reason: string | undefined;
210
+ metadata: Record<string, any> | undefined;
211
+ createdAt: number;
212
+ }[];
213
+ }>>;
214
+ /**
215
+ * Revokes a single key and records the revocation event.
216
+ */
217
+ export declare const invalidate: import("convex/server").RegisteredMutation<"public", {
218
+ logLevel?: "debug" | "warn" | "error" | "none" | undefined;
219
+ metadata?: Record<string, any> | undefined;
220
+ reason?: string | undefined;
221
+ keyId: import("convex/values").GenericId<"apiKeys">;
222
+ now: number;
223
+ }, Promise<{
224
+ ok: false;
225
+ reason: "not_found";
226
+ keyId?: undefined;
227
+ revokedAt?: undefined;
228
+ } | {
229
+ ok: false;
230
+ reason: "revoked";
231
+ keyId?: undefined;
232
+ revokedAt?: undefined;
233
+ } | {
234
+ ok: true;
235
+ keyId: import("convex/values").GenericId<"apiKeys">;
236
+ revokedAt: number;
237
+ reason?: undefined;
238
+ }>>;
239
+ /**
240
+ * Revokes active keys in pages using optional namespace/time filters.
241
+ */
242
+ export declare const invalidateAll: import("convex/server").RegisteredMutation<"public", {
243
+ logLevel?: "debug" | "warn" | "error" | "none" | undefined;
244
+ metadata?: Record<string, any> | undefined;
245
+ namespace?: string | undefined;
246
+ reason?: string | undefined;
247
+ after?: number | undefined;
248
+ before?: number | undefined;
249
+ now: number;
250
+ paginationOpts: {
251
+ id?: number;
252
+ endCursor?: string | null;
253
+ maximumRowsRead?: number;
254
+ maximumBytesRead?: number;
255
+ numItems: number;
256
+ cursor: string | null;
257
+ };
258
+ }, Promise<{
259
+ processed: number;
260
+ revoked: number;
261
+ isDone: boolean;
262
+ continueCursor: string;
263
+ }>>;
264
+ /**
265
+ * Updates mutable key properties (name, metadata, expiry).
266
+ * Passing `expiresAt: null` removes the expiry field entirely.
267
+ */
268
+ export declare const update: import("convex/server").RegisteredMutation<"public", {
269
+ expiresAt?: number | null | undefined;
270
+ logLevel?: "debug" | "warn" | "error" | "none" | undefined;
271
+ maxIdleMs?: number | null | undefined;
272
+ metadata?: Record<string, any> | undefined;
273
+ name?: string | undefined;
274
+ keyId: import("convex/values").GenericId<"apiKeys">;
275
+ }, Promise<{
276
+ ok: false;
277
+ reason: "not_found";
278
+ keyId?: undefined;
279
+ } | {
280
+ ok: false;
281
+ reason: "already_revoked";
282
+ keyId?: undefined;
283
+ } | {
284
+ ok: true;
285
+ keyId: import("convex/values").GenericId<"apiKeys">;
286
+ reason?: undefined;
287
+ }>>;
288
+ /**
289
+ * Rotates a key by revoking the old key and creating a replacement.
290
+ */
291
+ export declare const refresh: import("convex/server").RegisteredMutation<"public", {
292
+ logLevel?: "debug" | "warn" | "error" | "none" | undefined;
293
+ metadata?: Record<string, any> | undefined;
294
+ reason?: string | undefined;
295
+ tokenHash: string;
296
+ tokenLast4: string;
297
+ tokenPrefix: string;
298
+ keyId: import("convex/values").GenericId<"apiKeys">;
299
+ now: number;
300
+ }, Promise<{
301
+ ok: false;
302
+ reason: "not_found";
303
+ keyId?: undefined;
304
+ replacedKeyId?: undefined;
305
+ createdAt?: undefined;
306
+ expiresAt?: undefined;
307
+ } | {
308
+ ok: false;
309
+ reason: "revoked" | "expired" | "idle_timeout";
310
+ keyId?: undefined;
311
+ replacedKeyId?: undefined;
312
+ createdAt?: undefined;
313
+ expiresAt?: undefined;
314
+ } | {
315
+ ok: true;
316
+ keyId: import("convex/values").GenericId<"apiKeys">;
317
+ replacedKeyId: import("convex/values").GenericId<"apiKeys">;
318
+ createdAt: number;
319
+ expiresAt: number | undefined;
320
+ reason?: undefined;
321
+ }>>;
322
+ export {};
323
+ //# sourceMappingURL=lib.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"lib.d.ts","sourceRoot":"","sources":["../../src/component/lib.ts"],"names":[],"mappings":"AAkCA,KAAK,eAAe,GAAG,QAAQ,GAAG,SAAS,GAAG,SAAS,GAAG,cAAc,CAAC;AAiNzE;;GAEG;AACH,eAAO,MAAM,MAAM;;;;;;;;;;;;;;GAyEjB,CAAC;AAEH;;GAEG;AACH,eAAO,MAAM,QAAQ;;;;;;;;;;;;;;;;;;;;;;;;;;;;GAuCnB,CAAC;AAEH;;GAEG;AACH,eAAO,MAAM,KAAK;;;;;;;;;;;;;;;;;;GA4BhB,CAAC;AAEH;;GAEG;AACH,eAAO,MAAM,QAAQ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GAuDnB,CAAC;AAEH;;GAEG;AACH,eAAO,MAAM,MAAM;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GAiCjB,CAAC;AAEH;;GAEG;AACH,eAAO,MAAM,aAAa;;;;;;;;;;;;;;;;;;;;;;;GAoBxB,CAAC;AAEH;;GAEG;AACH,eAAO,MAAM,UAAU;;;;;;;;;;;;;;;;;;;;;;;GAwBrB,CAAC;AAEH;;GAEG;AACH,eAAO,MAAM,UAAU;;;;;;;;;;;;;;;;;;;;;GAyCrB,CAAC;AAEH;;GAEG;AACH,eAAO,MAAM,aAAa;;;;;;;;;;;;;;;;;;;;;GAsExB,CAAC;AAEH;;;GAGG;AACH,eAAO,MAAM,MAAM;;;;;;;;;;;;;;;;;;;GA+EjB,CAAC;AAEH;;GAEG;AACH,eAAO,MAAM,OAAO;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GAmFlB,CAAC"}