Skip to content

Documentation / @super-line/plugin-queue / QueueKit

Interface: QueueKit<Q> ​

Defined in: packages/plugin-queue/src/index.ts:232

Type Parameters ​

Q ​

Q extends QueueDefinitions

Properties ​

contract ​

readonly contract: ContractPlugin<{ collections: { queueJobs: { indexes: readonly [readonly ["queue", "status", "availableAt", "priority", "createdAt"], readonly ["status", "leaseExpiresAt"], readonly ["deleteAt"], readonly ["scheduleId", "status"]]; key: "id"; schema: ZodObject<{ attempt: ZodNumber; availableAt: ZodNumber; backoff: ZodObject<{ delayMs: ZodNumber; jitter: ZodOptional<ZodNumber>; maxDelayMs: ZodOptional<ZodNumber>; type: ZodEnum<{ exponential: "exponential"; fixed: "fixed"; }>; }, $strip>; cancelReason: ZodOptional<ZodString>; cancelRequestedAt: ZodOptional<ZodNumber>; createdAt: ZodNumber; deleteAt: ZodOptional<ZodNumber>; finishedAt: ZodOptional<ZodNumber>; id: ZodString; input: ZodUnknown; lastError: ZodOptional<ZodObject<{ at: ZodNumber; attempt: ZodNumber; code: ZodOptional<ZodString>; message: ZodString; name: ZodString; }, $strip>>; leaseExpiresAt: ZodOptional<ZodNumber>; maxAttempts: ZodNumber; nodeId: ZodOptional<ZodString>; nodeKey: ZodOptional<ZodString>; priority: ZodNumber; queue: ZodString; result: ZodOptional<ZodUnknown>; retention: ZodObject<{ cancelledMs: ZodNullable<ZodNumber>; completedMs: ZodNullable<ZodNumber>; failedMs: ZodNullable<ZodNumber>; }, $strip>; retryOf: ZodOptional<ZodString>; revision: ZodNumber; rootJobId: ZodOptional<ZodString>; runId: ZodOptional<ZodString>; scheduledFor: ZodOptional<ZodNumber>; scheduleId: ZodOptional<ZodString>; slotId: ZodOptional<ZodString>; startedAt: ZodOptional<ZodNumber>; status: ZodEnum<{ cancelled: "cancelled"; completed: "completed"; failed: "failed"; queued: "queued"; running: "running"; }>; timeoutMs: ZodOptional<ZodNumber>; updatedAt: ZodNumber; }, $strip>; }; queueSchedules: { indexes: readonly [readonly ["enabled", "nextRunAt"]]; key: "id"; schema: ZodObject<{ createdAt: ZodNumber; cron: ZodString; enabled: ZodBoolean; id: ZodString; input: ZodUnknown; lastJobId: ZodOptional<ZodString>; lastScheduledAt: ZodOptional<ZodNumber>; maxCatchUp: ZodOptional<ZodNumber>; misfirePolicy: ZodEnum<{ all: "all"; latest: "latest"; skip: "skip"; }>; nextRunAt: ZodNumber; overlapPolicy: ZodEnum<{ allow: "allow"; skip: "skip"; }>; queue: ZodString; revision: ZodNumber; timezone: ZodString; updatedAt: ZodNumber; }, $strip>; }; queueSlots: { indexes: readonly [readonly ["queue", "index"]]; key: "id"; schema: ZodObject<{ createdAt: ZodNumber; id: ZodString; index: ZodNumber; jobId: ZodOptional<ZodString>; leaseExpiresAt: ZodOptional<ZodNumber>; nodeId: ZodOptional<ZodString>; nodeKey: ZodOptional<ZodString>; queue: ZodString; revision: ZodNumber; runId: ZodOptional<ZodString>; updatedAt: ZodNumber; }, $strip>; }; }; }>

Defined in: packages/plugin-queue/src/index.ts:233


plugin ​

readonly plugin: SuperLinePlugin

Defined in: packages/plugin-queue/src/index.ts:234


schedules ​

readonly schedules: object

Defined in: packages/plugin-queue/src/index.ts:241

create() ​

create(options): Promise<{ createdAt: number; cron: string; enabled: boolean; id: string; input: unknown; lastJobId?: string; lastScheduledAt?: number; maxCatchUp?: number; misfirePolicy: "skip" | "latest" | "all"; nextRunAt: number; overlapPolicy: "skip" | "allow"; queue: string; revision: number; timezone: string; updatedAt: number; }>

Parameters ​
options ​

ScheduleCreateOf<Q>

Returns ​

Promise<{ createdAt: number; cron: string; enabled: boolean; id: string; input: unknown; lastJobId?: string; lastScheduledAt?: number; maxCatchUp?: number; misfirePolicy: "skip" | "latest" | "all"; nextRunAt: number; overlapPolicy: "skip" | "allow"; queue: string; revision: number; timezone: string; updatedAt: number; }>

delete() ​

delete(id): Promise<void>

Parameters ​
id ​

string

Returns ​

Promise<void>

get() ​

get(id): Promise<{ createdAt: number; cron: string; enabled: boolean; id: string; input: unknown; lastJobId?: string; lastScheduledAt?: number; maxCatchUp?: number; misfirePolicy: "skip" | "latest" | "all"; nextRunAt: number; overlapPolicy: "skip" | "allow"; queue: string; revision: number; timezone: string; updatedAt: number; } | undefined>

Parameters ​
id ​

string

Returns ​

Promise<{ createdAt: number; cron: string; enabled: boolean; id: string; input: unknown; lastJobId?: string; lastScheduledAt?: number; maxCatchUp?: number; misfirePolicy: "skip" | "latest" | "all"; nextRunAt: number; overlapPolicy: "skip" | "allow"; queue: string; revision: number; timezone: string; updatedAt: number; } | undefined>

list() ​

list(query?): Promise<object[]>

Parameters ​
query? ​

CollectionQuery

Returns ​

Promise<object[]>

pause() ​

pause(id): Promise<{ createdAt: number; cron: string; enabled: boolean; id: string; input: unknown; lastJobId?: string; lastScheduledAt?: number; maxCatchUp?: number; misfirePolicy: "skip" | "latest" | "all"; nextRunAt: number; overlapPolicy: "skip" | "allow"; queue: string; revision: number; timezone: string; updatedAt: number; }>

Parameters ​
id ​

string

Returns ​

Promise<{ createdAt: number; cron: string; enabled: boolean; id: string; input: unknown; lastJobId?: string; lastScheduledAt?: number; maxCatchUp?: number; misfirePolicy: "skip" | "latest" | "all"; nextRunAt: number; overlapPolicy: "skip" | "allow"; queue: string; revision: number; timezone: string; updatedAt: number; }>

resume() ​

resume(id): Promise<{ createdAt: number; cron: string; enabled: boolean; id: string; input: unknown; lastJobId?: string; lastScheduledAt?: number; maxCatchUp?: number; misfirePolicy: "skip" | "latest" | "all"; nextRunAt: number; overlapPolicy: "skip" | "allow"; queue: string; revision: number; timezone: string; updatedAt: number; }>

Parameters ​
id ​

string

Returns ​

Promise<{ createdAt: number; cron: string; enabled: boolean; id: string; input: unknown; lastJobId?: string; lastScheduledAt?: number; maxCatchUp?: number; misfirePolicy: "skip" | "latest" | "all"; nextRunAt: number; overlapPolicy: "skip" | "allow"; queue: string; revision: number; timezone: string; updatedAt: number; }>

trigger() ​

trigger(id): Promise<{ attempt: number; availableAt: number; backoff: { delayMs: number; jitter?: number; maxDelayMs?: number; type: "fixed" | "exponential"; }; cancelReason?: string; cancelRequestedAt?: number; createdAt: number; deleteAt?: number; finishedAt?: number; id: string; input: unknown; lastError?: { at: number; attempt: number; code?: string; message: string; name: string; }; leaseExpiresAt?: number; maxAttempts: number; nodeId?: string; nodeKey?: string; priority: number; queue: string; result?: unknown; retention: { cancelledMs: number | null; completedMs: number | null; failedMs: number | null; }; retryOf?: string; revision: number; rootJobId?: string; runId?: string; scheduledFor?: number; scheduleId?: string; slotId?: string; startedAt?: number; status: "queued" | "running" | "completed" | "failed" | "cancelled"; timeoutMs?: number; updatedAt: number; }>

Parameters ​
id ​

string

Returns ​

Promise<{ attempt: number; availableAt: number; backoff: { delayMs: number; jitter?: number; maxDelayMs?: number; type: "fixed" | "exponential"; }; cancelReason?: string; cancelRequestedAt?: number; createdAt: number; deleteAt?: number; finishedAt?: number; id: string; input: unknown; lastError?: { at: number; attempt: number; code?: string; message: string; name: string; }; leaseExpiresAt?: number; maxAttempts: number; nodeId?: string; nodeKey?: string; priority: number; queue: string; result?: unknown; retention: { cancelledMs: number | null; completedMs: number | null; failedMs: number | null; }; retryOf?: string; revision: number; rootJobId?: string; runId?: string; scheduledFor?: number; scheduleId?: string; slotId?: string; startedAt?: number; status: "queued" | "running" | "completed" | "failed" | "cancelled"; timeoutMs?: number; updatedAt: number; }>

update() ​

update(id, patch): Promise<{ createdAt: number; cron: string; enabled: boolean; id: string; input: unknown; lastJobId?: string; lastScheduledAt?: number; maxCatchUp?: number; misfirePolicy: "skip" | "latest" | "all"; nextRunAt: number; overlapPolicy: "skip" | "allow"; queue: string; revision: number; timezone: string; updatedAt: number; }>

Parameters ​
id ​

string

patch ​

UpdateScheduleOptions

Returns ​

Promise<{ createdAt: number; cron: string; enabled: boolean; id: string; input: unknown; lastJobId?: string; lastScheduledAt?: number; maxCatchUp?: number; misfirePolicy: "skip" | "latest" | "all"; nextRunAt: number; overlapPolicy: "skip" | "allow"; queue: string; revision: number; timezone: string; updatedAt: number; }>

Methods ​

cancel() ​

cancel(jobId, options?): Promise<{ attempt: number; availableAt: number; backoff: { delayMs: number; jitter?: number; maxDelayMs?: number; type: "fixed" | "exponential"; }; cancelReason?: string; cancelRequestedAt?: number; createdAt: number; deleteAt?: number; finishedAt?: number; id: string; input: unknown; lastError?: { at: number; attempt: number; code?: string; message: string; name: string; }; leaseExpiresAt?: number; maxAttempts: number; nodeId?: string; nodeKey?: string; priority: number; queue: string; result?: unknown; retention: { cancelledMs: number | null; completedMs: number | null; failedMs: number | null; }; retryOf?: string; revision: number; rootJobId?: string; runId?: string; scheduledFor?: number; scheduleId?: string; slotId?: string; startedAt?: number; status: "queued" | "running" | "completed" | "failed" | "cancelled"; timeoutMs?: number; updatedAt: number; }>

Defined in: packages/plugin-queue/src/index.ts:239

Parameters ​

jobId ​

string

options? ​
reason? ​

string

Returns ​

Promise<{ attempt: number; availableAt: number; backoff: { delayMs: number; jitter?: number; maxDelayMs?: number; type: "fixed" | "exponential"; }; cancelReason?: string; cancelRequestedAt?: number; createdAt: number; deleteAt?: number; finishedAt?: number; id: string; input: unknown; lastError?: { at: number; attempt: number; code?: string; message: string; name: string; }; leaseExpiresAt?: number; maxAttempts: number; nodeId?: string; nodeKey?: string; priority: number; queue: string; result?: unknown; retention: { cancelledMs: number | null; completedMs: number | null; failedMs: number | null; }; retryOf?: string; revision: number; rootJobId?: string; runId?: string; scheduledFor?: number; scheduleId?: string; slotId?: string; startedAt?: number; status: "queued" | "running" | "completed" | "failed" | "cancelled"; timeoutMs?: number; updatedAt: number; }>


enqueue() ​

enqueue<N>(queue, input, options?): Promise<{ attempt: number; availableAt: number; backoff: { delayMs: number; jitter?: number; maxDelayMs?: number; type: "fixed" | "exponential"; }; cancelReason?: string; cancelRequestedAt?: number; createdAt: number; deleteAt?: number; finishedAt?: number; id: string; input: unknown; lastError?: { at: number; attempt: number; code?: string; message: string; name: string; }; leaseExpiresAt?: number; maxAttempts: number; nodeId?: string; nodeKey?: string; priority: number; queue: string; result?: unknown; retention: { cancelledMs: number | null; completedMs: number | null; failedMs: number | null; }; retryOf?: string; revision: number; rootJobId?: string; runId?: string; scheduledFor?: number; scheduleId?: string; slotId?: string; startedAt?: number; status: "queued" | "running" | "completed" | "failed" | "cancelled"; timeoutMs?: number; updatedAt: number; }>

Defined in: packages/plugin-queue/src/index.ts:236

Type Parameters ​

N ​

N extends string

Parameters ​

queue ​

N

input ​

InputOf<Q, N>

options? ​

EnqueueOptions

Returns ​

Promise<{ attempt: number; availableAt: number; backoff: { delayMs: number; jitter?: number; maxDelayMs?: number; type: "fixed" | "exponential"; }; cancelReason?: string; cancelRequestedAt?: number; createdAt: number; deleteAt?: number; finishedAt?: number; id: string; input: unknown; lastError?: { at: number; attempt: number; code?: string; message: string; name: string; }; leaseExpiresAt?: number; maxAttempts: number; nodeId?: string; nodeKey?: string; priority: number; queue: string; result?: unknown; retention: { cancelledMs: number | null; completedMs: number | null; failedMs: number | null; }; retryOf?: string; revision: number; rootJobId?: string; runId?: string; scheduledFor?: number; scheduleId?: string; slotId?: string; startedAt?: number; status: "queued" | "running" | "completed" | "failed" | "cancelled"; timeoutMs?: number; updatedAt: number; }>


get() ​

get(jobId): Promise<{ attempt: number; availableAt: number; backoff: { delayMs: number; jitter?: number; maxDelayMs?: number; type: "fixed" | "exponential"; }; cancelReason?: string; cancelRequestedAt?: number; createdAt: number; deleteAt?: number; finishedAt?: number; id: string; input: unknown; lastError?: { at: number; attempt: number; code?: string; message: string; name: string; }; leaseExpiresAt?: number; maxAttempts: number; nodeId?: string; nodeKey?: string; priority: number; queue: string; result?: unknown; retention: { cancelledMs: number | null; completedMs: number | null; failedMs: number | null; }; retryOf?: string; revision: number; rootJobId?: string; runId?: string; scheduledFor?: number; scheduleId?: string; slotId?: string; startedAt?: number; status: "queued" | "running" | "completed" | "failed" | "cancelled"; timeoutMs?: number; updatedAt: number; } | undefined>

Defined in: packages/plugin-queue/src/index.ts:237

Parameters ​

jobId ​

string

Returns ​

Promise<{ attempt: number; availableAt: number; backoff: { delayMs: number; jitter?: number; maxDelayMs?: number; type: "fixed" | "exponential"; }; cancelReason?: string; cancelRequestedAt?: number; createdAt: number; deleteAt?: number; finishedAt?: number; id: string; input: unknown; lastError?: { at: number; attempt: number; code?: string; message: string; name: string; }; leaseExpiresAt?: number; maxAttempts: number; nodeId?: string; nodeKey?: string; priority: number; queue: string; result?: unknown; retention: { cancelledMs: number | null; completedMs: number | null; failedMs: number | null; }; retryOf?: string; revision: number; rootJobId?: string; runId?: string; scheduledFor?: number; scheduleId?: string; slotId?: string; startedAt?: number; status: "queued" | "running" | "completed" | "failed" | "cancelled"; timeoutMs?: number; updatedAt: number; } | undefined>


list() ​

list(query?): Promise<object[]>

Defined in: packages/plugin-queue/src/index.ts:238

Parameters ​

query? ​

CollectionQuery

Returns ​

Promise<object[]>


queue() ​

queue<N>(name): QueueHandle<Q, N>

Defined in: packages/plugin-queue/src/index.ts:235

Type Parameters ​

N ​

N extends string

Parameters ​

name ​

N

Returns ​

QueueHandle<Q, N>


retry() ​

retry(jobId, options?): Promise<{ attempt: number; availableAt: number; backoff: { delayMs: number; jitter?: number; maxDelayMs?: number; type: "fixed" | "exponential"; }; cancelReason?: string; cancelRequestedAt?: number; createdAt: number; deleteAt?: number; finishedAt?: number; id: string; input: unknown; lastError?: { at: number; attempt: number; code?: string; message: string; name: string; }; leaseExpiresAt?: number; maxAttempts: number; nodeId?: string; nodeKey?: string; priority: number; queue: string; result?: unknown; retention: { cancelledMs: number | null; completedMs: number | null; failedMs: number | null; }; retryOf?: string; revision: number; rootJobId?: string; runId?: string; scheduledFor?: number; scheduleId?: string; slotId?: string; startedAt?: number; status: "queued" | "running" | "completed" | "failed" | "cancelled"; timeoutMs?: number; updatedAt: number; }>

Defined in: packages/plugin-queue/src/index.ts:240

Parameters ​

jobId ​

string

options? ​

EnqueueOptions

Returns ​

Promise<{ attempt: number; availableAt: number; backoff: { delayMs: number; jitter?: number; maxDelayMs?: number; type: "fixed" | "exponential"; }; cancelReason?: string; cancelRequestedAt?: number; createdAt: number; deleteAt?: number; finishedAt?: number; id: string; input: unknown; lastError?: { at: number; attempt: number; code?: string; message: string; name: string; }; leaseExpiresAt?: number; maxAttempts: number; nodeId?: string; nodeKey?: string; priority: number; queue: string; result?: unknown; retention: { cancelledMs: number | null; completedMs: number | null; failedMs: number | null; }; retryOf?: string; revision: number; rootJobId?: string; runId?: string; scheduledFor?: number; scheduleId?: string; slotId?: string; startedAt?: number; status: "queued" | "running" | "completed" | "failed" | "cancelled"; timeoutMs?: number; updatedAt: number; }>

Released under the MIT License.