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.