@spawnco/sdk-types 0.0.49 → 0.0.50
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/index.d.mts +24 -0
- package/dist/index.d.ts +24 -0
- package/package.json +1 -1
- package/src/v1.ts +29 -0
package/dist/index.d.mts
CHANGED
|
@@ -236,6 +236,30 @@ interface SpawnServerSDK__V1<TConfig = any> {
|
|
|
236
236
|
* List all document names for this variant.
|
|
237
237
|
*/
|
|
238
238
|
list(): Promise<string[]>;
|
|
239
|
+
/**
|
|
240
|
+
* Acquire a distributed lock on a key. Blocks until lock is acquired or timeout.
|
|
241
|
+
* Always use try/finally to ensure unlock() is called.
|
|
242
|
+
*
|
|
243
|
+
* @example
|
|
244
|
+
* await sdk.documents.lock("leaderboard");
|
|
245
|
+
* try {
|
|
246
|
+
* const data = await sdk.documents.get("leaderboard");
|
|
247
|
+
* // ... mutate data ...
|
|
248
|
+
* await sdk.documents.set("leaderboard", data);
|
|
249
|
+
* } finally {
|
|
250
|
+
* await sdk.documents.unlock("leaderboard");
|
|
251
|
+
* }
|
|
252
|
+
*/
|
|
253
|
+
lock(key: string, options?: {
|
|
254
|
+
/** Auto-expire if worker crashes (default: 30000ms) */
|
|
255
|
+
ttlMs?: number;
|
|
256
|
+
/** Max time to wait for lock (default: 10000ms) */
|
|
257
|
+
waitMs?: number;
|
|
258
|
+
}): Promise<void>;
|
|
259
|
+
/**
|
|
260
|
+
* Release a distributed lock. Must be called after lock() in a finally block.
|
|
261
|
+
*/
|
|
262
|
+
unlock(key: string): Promise<void>;
|
|
239
263
|
};
|
|
240
264
|
config: {
|
|
241
265
|
get(): Promise<TConfig>;
|
package/dist/index.d.ts
CHANGED
|
@@ -236,6 +236,30 @@ interface SpawnServerSDK__V1<TConfig = any> {
|
|
|
236
236
|
* List all document names for this variant.
|
|
237
237
|
*/
|
|
238
238
|
list(): Promise<string[]>;
|
|
239
|
+
/**
|
|
240
|
+
* Acquire a distributed lock on a key. Blocks until lock is acquired or timeout.
|
|
241
|
+
* Always use try/finally to ensure unlock() is called.
|
|
242
|
+
*
|
|
243
|
+
* @example
|
|
244
|
+
* await sdk.documents.lock("leaderboard");
|
|
245
|
+
* try {
|
|
246
|
+
* const data = await sdk.documents.get("leaderboard");
|
|
247
|
+
* // ... mutate data ...
|
|
248
|
+
* await sdk.documents.set("leaderboard", data);
|
|
249
|
+
* } finally {
|
|
250
|
+
* await sdk.documents.unlock("leaderboard");
|
|
251
|
+
* }
|
|
252
|
+
*/
|
|
253
|
+
lock(key: string, options?: {
|
|
254
|
+
/** Auto-expire if worker crashes (default: 30000ms) */
|
|
255
|
+
ttlMs?: number;
|
|
256
|
+
/** Max time to wait for lock (default: 10000ms) */
|
|
257
|
+
waitMs?: number;
|
|
258
|
+
}): Promise<void>;
|
|
259
|
+
/**
|
|
260
|
+
* Release a distributed lock. Must be called after lock() in a finally block.
|
|
261
|
+
*/
|
|
262
|
+
unlock(key: string): Promise<void>;
|
|
239
263
|
};
|
|
240
264
|
config: {
|
|
241
265
|
get(): Promise<TConfig>;
|
package/package.json
CHANGED
package/src/v1.ts
CHANGED
|
@@ -260,6 +260,35 @@ export interface SpawnServerSDK__V1<TConfig = any> {
|
|
|
260
260
|
* List all document names for this variant.
|
|
261
261
|
*/
|
|
262
262
|
list(): Promise<string[]>;
|
|
263
|
+
|
|
264
|
+
/**
|
|
265
|
+
* Acquire a distributed lock on a key. Blocks until lock is acquired or timeout.
|
|
266
|
+
* Always use try/finally to ensure unlock() is called.
|
|
267
|
+
*
|
|
268
|
+
* @example
|
|
269
|
+
* await sdk.documents.lock("leaderboard");
|
|
270
|
+
* try {
|
|
271
|
+
* const data = await sdk.documents.get("leaderboard");
|
|
272
|
+
* // ... mutate data ...
|
|
273
|
+
* await sdk.documents.set("leaderboard", data);
|
|
274
|
+
* } finally {
|
|
275
|
+
* await sdk.documents.unlock("leaderboard");
|
|
276
|
+
* }
|
|
277
|
+
*/
|
|
278
|
+
lock(
|
|
279
|
+
key: string,
|
|
280
|
+
options?: {
|
|
281
|
+
/** Auto-expire if worker crashes (default: 30000ms) */
|
|
282
|
+
ttlMs?: number;
|
|
283
|
+
/** Max time to wait for lock (default: 10000ms) */
|
|
284
|
+
waitMs?: number;
|
|
285
|
+
}
|
|
286
|
+
): Promise<void>;
|
|
287
|
+
|
|
288
|
+
/**
|
|
289
|
+
* Release a distributed lock. Must be called after lock() in a finally block.
|
|
290
|
+
*/
|
|
291
|
+
unlock(key: string): Promise<void>;
|
|
263
292
|
};
|
|
264
293
|
|
|
265
294
|
config: {
|