import type { APIResponseObject, BunSQLiteConfig } from "../../types";
type BaseParams
= {
table: Table;
config?: BunSQLiteConfig;
};
/**
* # Add jobs to a queue table
* @description `delay` (ms) holds the jobs back before they can be claimed
*/
export declare function QueueAdd({ table, data, delay, config, }: BaseParams & {
data: Schema[];
delay?: number;
}): Promise>;
/**
* # Claim jobs from a queue table
* @description Claimed jobs are set to `processing` in one statement, so
* two workers can never claim the same job. Stale locks are released first.
*/
export declare function QueueClaim({ table, worker, limit, config, }: BaseParams & {
worker?: string;
limit?: number;
}): Promise>;
/**
* # Mark a claimed job as done
* @description Deletes the job instead when `deleteOnComplete` is set
*/
export declare function QueueComplete({ table, id, config, }: BaseParams & {
id: number | string;
}): Promise>;
/**
* # Mark a claimed job as failed
* @description The job goes back to `pending` with an exponential
* `backoff` delay, or to `failed` once it has used `maxAttempts`
*/
export declare function QueueFail({ table, id, error, config, }: BaseParams & {
id: number | string;
error?: string;
}): Promise>;
/**
* # Release stale locks
* @description For jobs whose worker died. `claim` also does this.
*/
export declare function QueueReleaseStale({ table, config }: BaseParams