/**
 * File was automatically generated using json-schema-to-typescript.
 * DO NOT MODIFY IT BY HAND.
 * Instead, modify the source file https://formats.openag.io/oada/service/job.schema.json of @oada/formats
 * and run `$ yarn build` to regenerate this file.
 */
/**
 * $id of the source schema
 * @see {@link https://formats.openag.io/oada/service/job.schema.json}
 */
export declare const $id = "https://formats.openag.io/oada/service/job.schema.json";
/**
 * Returns true if val is a @type Job, false otherwise
 */
export declare function is(val: any): val is Job;
/**
 * Asserts that val is a @type Job
 */
export declare function assert(val: any): asserts val is Job;
export default Job;
/**
 * The format for an @oada/jobs job queue job.
 */
export interface Job {
    /**
     * Service name which job is for
     */
    service: string;
    /**
     * Service specific identifier of job type
     */
    type: string;
    /**
     * Job spceific configuration object
     */
    config?: {
        [k: string]: unknown;
    };
    /**
     * Final result of job
     */
    result?: {
        [k: string]: unknown;
    };
    /**
     * Current status of job
     */
    status?: string;
    /**
     * A list of updates as job progresses. Keys shall be sorted in time order.
     */
    updates?: {
        /**
         * A list of updates as job progresses. Keys shall be sorted in time order.
         */
        [k: string]: {
            /**
             * Status of job at the time of update
             */
            status: string;
            /**
             * ISO8601 UTC date-time of update time
             */
            time: string;
            /**
             * Additional meta data about the status update
             */
            meta?: {
                [k: string]: unknown;
            };
            [k: string]: unknown;
        };
    };
    [k: string]: unknown;
}
//# sourceMappingURL=job.d.ts.map