Connect to the database
Disable jobs matching the given options
Number of jobs disabled
Enable jobs matching the given options
Number of jobs enabled
Get all distinct job names
Get overview statistics for all job types
Find and lock the next job to run for a given job type
Get count of jobs ready to run (nextRunAt < now)
Attempt to lock a job for processing
The locked job data, or undefined if lock failed
Query jobs with filtering, pagination, and state computation
Optionaloptions: JobsQueryOptionsRemove jobs matching the given options
Number of jobs removed
Save a job (insert or update)
Update job state fields (lockedAt, lastRunAt, progress, etc.)
Database-agnostic job repository interface. Implementations can be created for MongoDB, PostgreSQL, etc.