summaryrefslogtreecommitdiff
path: root/model/job/index.ts
diff options
context:
space:
mode:
Diffstat (limited to 'model/job/index.ts')
-rw-r--r--model/job/index.ts11
1 files changed, 11 insertions, 0 deletions
diff --git a/model/job/index.ts b/model/job/index.ts
new file mode 100644
index 0000000..78f69d6
--- /dev/null
+++ b/model/job/index.ts
@@ -0,0 +1,11 @@
+import { isObject } from '@emprespresso/pengueno';
+
+export type JobArgT = Record<string, string>;
+export interface Job {
+ readonly type: string;
+ readonly arguments: JobArgT;
+}
+export const isJob = (j: unknown): j is Job =>
+ !!(isObject(j) && 'arguments' in j && isObject(j.arguments) && 'type' in j && typeof j.type === 'string' && j);
+
+export * from './jobs';