import { type Infer, type Schema } from "./schema.js"; import type { BoardTask } from "./board.js"; import type { ConciergeStatus, StandingOrder } from "./concierge.js"; import type { RoostEvent } from "./events.js"; import type { PrInfo } from "./pr.js"; import type { UsageInfo } from "./usage.js"; export declare const JOB_STATES: readonly ["working", "blocked", "done", "failed", "stopped"]; declare const JobStateNameS: Schema<"done" | "working" | "blocked" | "failed" | "stopped">; declare const JobStatusS: Schema<"waiting" | "busy" | "idle" | null>; declare const WaitingForS: Schema<"dialog" | "question" | "first-prompt" | null>; declare const DispatchOriginS: Schema<"bg" | "dispatch" | "adopt" | "fork">; export type JobStateName = Infer; export type JobStatus = Infer; export type WaitingFor = Infer; export type DispatchOrigin = Infer; export declare const REPLY_MODES: readonly ["steer", "followUp"]; /** M28: "steer" joins the work under way, after its current tool calls; "followUp" waits until it is done. */ declare const ReplyModeS: Schema<"steer" | "followUp">; export type ReplyMode = Infer; export declare const ContextInfoS: Schema<{ tokens: number | null; window: number; percent: number | null; }>; export type ContextInfo = Infer; export declare const JobRowSchema: Schema<{ id: string; cwd: string; kind: "shell" | "pi"; startedAt: number; state: "done" | "working" | "blocked" | "failed" | "stopped"; pid: number | null; status: "waiting" | "busy" | "idle" | null; waitingFor: "dialog" | "question" | "first-prompt" | null; sessionFile: string; name: string; endedAt: number | null; summary: string | null; question: string | null; choices: string[]; model: string | null; thinking: string | null; context: { tokens: number | null; window: number; percent: number | null; } | null; error: string | null; stateSince: number; reaped: boolean; pinned: boolean; order: number | null; orderKey: string | null; usage?: UsageInfo | null | undefined; parentSession?: string | null | undefined; rootSession?: string | null | undefined; parentOpen?: boolean | undefined; agent?: string | null | undefined; prs?: PrInfo[] | undefined; worktree?: { path: string; branch: string; base?: string | undefined; } | null | undefined; fanout?: string | null | undefined; profile?: string | undefined; schedule?: string | null | undefined; capabilities?: string[] | undefined; role?: "concierge" | null | undefined; suggested?: { text: string; why: string | null; at: number; } | null | undefined; task?: string | null | undefined; queued?: number | undefined; }>; export type JobRow = Infer; export declare const PeerRowSchema: Schema<{ id: string; name: string; relation: "parent" | "child" | "sibling" | "tree" | "external"; role: "job" | "foreground"; state: "done" | "working" | "blocked" | "failed" | "stopped" | "live"; status: "waiting" | "busy" | "idle" | null; waitingFor: "dialog" | "question" | "first-prompt" | null; summary: string | null; question: string | null; cwd: string; }>; export type PeerRow = Infer; export declare const SendResultSchema: Schema<{ outcome: "stopped" | "queued" | "delivered" | "started" | "not running" | "duplicate"; id: string; name: string; relation: "parent" | "child" | "sibling" | "tree" | "external"; dialog?: boolean | undefined; }>; export type SendResult = Infer; export declare const HandbackArgsSchema: Schema<{ state: "done" | "blocked" | "failed"; result: string | null; question: string | null; error: string | null; }>; export type HandbackArgs = Infer; export declare const WorkerReportSchema: Schema<{ state: "done" | "working" | "blocked" | "failed"; status: "waiting" | "busy" | "idle"; waitingFor: "dialog" | "question" | "first-prompt" | null; summary: string | null; question: string | null; choices: string[]; tool: string | null; error: string | null; name: string | null; model: string | null; thinking?: string | null | undefined; context?: { tokens: number | null; window: number; percent: number | null; } | null | undefined; usage?: UsageInfo | null | undefined; attachSignal?: boolean | undefined; attachRepaint?: boolean | undefined; agentItems?: boolean | undefined; remoteAt?: number | undefined; prLinks?: string[] | undefined; }>; export type WorkerReport = Infer; export declare const DispatchArgsSchema: Schema<{ cwd: string; sessionFile: string; command: string[]; env: Record; name: string; origin: "bg" | "dispatch" | "adopt" | "fork"; kind?: "shell" | "pi" | undefined; model?: string | undefined; thinking?: string | undefined; agent?: string | undefined; workspaceEnv?: "shell" | "off" | "direnv" | undefined; envDeny?: string[] | undefined; envForce?: string[] | undefined; piVersion?: string | undefined; worktree?: { path: string; branch: string; repo: string; base: string; } | undefined; fanout?: string | undefined; profile?: string | undefined; term?: { submit: string; settleMs: number; waiting?: string | undefined; working?: string | undefined; typeTask?: string | undefined; } | undefined; resumeCommand?: string[] | undefined; taskInArgv?: boolean | undefined; resumable?: boolean | undefined; protocol?: boolean | undefined; requestId?: string | undefined; }>; export type DispatchArgs = Infer; export declare const DaemonStatusSchema: Schema<{ pid: number; version: string; socketDir: string; liveJobs: number; totalJobs: number; ptyError: string | null; startedAt: number; }>; export type DaemonStatus = Infer; export declare const HelloArgsSchema: Schema<{ protocol: number; agent?: { name: string; version?: string | undefined; } | undefined; capabilities?: string[] | undefined; }>; export type HelloArgs = Infer; export declare const HelloResultSchema: Schema<{ protocol: number; daemon: { name: "roost"; version: string; }; capabilities: string[]; }>; export type HelloResult = Infer; export declare const ScheduleRowSchema: Schema<{ name: string; when: string; task: string | null; agent: string; cwd: string; model: string | null; paused: boolean; catchUp: boolean; nextAt: number | null; lastRunAt: number | null; lastJob: string | null; lastSkip: { at: number; why: string; } | null; }>; export type ScheduleRow = Infer; export declare const TaskArgsSchema: Schema<{ action: "list"; project?: string | undefined; } | { action: "add"; title: string; detail?: string | undefined; after?: number[] | undefined; project?: string | null | undefined; } | { action: "cleanup"; dry?: boolean | undefined; } | { action: "claim"; id: number; } | { action: "release"; id: number; } | { action: "done"; id: number; result?: string | undefined; } | { action: "drop"; id: number; } | { action: "assign"; id: number; to: string; } | { action: "prepare"; id: number; } | { action: "start"; id: number; launch: { cwd: string; sessionFile: string; command: string[]; env: Record; name: string; origin: "bg" | "dispatch" | "adopt" | "fork"; kind?: "shell" | "pi" | undefined; model?: string | undefined; thinking?: string | undefined; agent?: string | undefined; workspaceEnv?: "shell" | "off" | "direnv" | undefined; envDeny?: string[] | undefined; envForce?: string[] | undefined; piVersion?: string | undefined; worktree?: { path: string; branch: string; repo: string; base: string; } | undefined; fanout?: string | undefined; profile?: string | undefined; term?: { submit: string; settleMs: number; waiting?: string | undefined; working?: string | undefined; typeTask?: string | undefined; } | undefined; resumeCommand?: string[] | undefined; taskInArgv?: boolean | undefined; resumable?: boolean | undefined; protocol?: boolean | undefined; requestId?: string | undefined; }; } | { action: "merge"; id: number; mode?: "ff" | "no-ff" | undefined; } | { action: "back"; id: number; note?: string | undefined; } | { action: "abort"; id: number; } | { action: "commit"; id: number; message?: string | undefined; } | { action: "approve"; id: number; dry?: boolean | undefined; hash?: string | undefined; } | { action: "verify"; id: number; } | { action: "pass"; id: number; } | { action: "comment"; id: number; comment: { file: string; line: number; text: string; lineText?: string | undefined; tip?: string | undefined; }; } | { action: "uncomment"; id: number; comment: { file: string; line: number; at: number; }; } | { action: "shelve"; id: number; } | { action: "pr"; id: number; dry?: boolean | undefined; hash?: string | undefined; }>; export type TaskArgs = Infer; export declare const ConciergeArgsSchema: Schema<{ action: "on"; launch?: { cwd: string; sessionFile: string; command: string[]; env: Record; name: string; origin: "bg" | "dispatch" | "adopt" | "fork"; kind?: "shell" | "pi" | undefined; model?: string | undefined; thinking?: string | undefined; agent?: string | undefined; workspaceEnv?: "shell" | "off" | "direnv" | undefined; envDeny?: string[] | undefined; envForce?: string[] | undefined; piVersion?: string | undefined; worktree?: { path: string; branch: string; repo: string; base: string; } | undefined; fanout?: string | undefined; profile?: string | undefined; term?: { submit: string; settleMs: number; waiting?: string | undefined; working?: string | undefined; typeTask?: string | undefined; } | undefined; resumeCommand?: string[] | undefined; taskInArgv?: boolean | undefined; resumable?: boolean | undefined; protocol?: boolean | undefined; requestId?: string | undefined; } | undefined; } | { action: "off"; } | { action: "status"; } | { action: "answer"; answer: "never" | "routine" | "always"; } | { action: "act"; act: boolean; } | { action: "undo"; }>; export type ConciergeArgs = Infer; export declare const ConciergeActArgsSchema: Schema<{ what: "stop" | "respawn"; id: string; why?: string | undefined; } | { what: "dispatch"; launch: { cwd: string; sessionFile: string; command: string[]; env: Record; name: string; origin: "bg" | "dispatch" | "adopt" | "fork"; kind?: "shell" | "pi" | undefined; model?: string | undefined; thinking?: string | undefined; agent?: string | undefined; workspaceEnv?: "shell" | "off" | "direnv" | undefined; envDeny?: string[] | undefined; envForce?: string[] | undefined; piVersion?: string | undefined; worktree?: { path: string; branch: string; repo: string; base: string; } | undefined; fanout?: string | undefined; profile?: string | undefined; term?: { submit: string; settleMs: number; waiting?: string | undefined; working?: string | undefined; typeTask?: string | undefined; } | undefined; resumeCommand?: string[] | undefined; taskInArgv?: boolean | undefined; resumable?: boolean | undefined; protocol?: boolean | undefined; requestId?: string | undefined; }; why?: string | undefined; }>; export type ConciergeActArgs = Infer; /** M46: the standing orders. */ export declare const ConciergeOrderArgsSchema: Schema<{ action: "list"; } | { action: "add"; text: string; when?: string | undefined; } | { action: "rm"; id: number; } | { action: "applied"; id: number; text?: string | undefined; }>; export type ConciergeOrderArgs = Infer; /** The literal values a union of objects discriminates on (the doc and the callers table read them). */ export declare function discriminants(union: Schema, key: string): T[]; export declare const TASK_ACTIONS: readonly TaskArgs["action"][]; export declare const ORDER_ACTIONS: readonly ConciergeOrderArgs["action"][]; /** Every op's arguments. */ export declare const ArgSchemas: { ping: Schema<{}>; schedules: Schema<{}>; "schedule-add": Schema<{ name: string; when: string; launch: { cwd: string; sessionFile: string; command: string[]; env: Record; name: string; origin: "bg" | "dispatch" | "adopt" | "fork"; kind?: "shell" | "pi" | undefined; model?: string | undefined; thinking?: string | undefined; agent?: string | undefined; workspaceEnv?: "shell" | "off" | "direnv" | undefined; envDeny?: string[] | undefined; envForce?: string[] | undefined; piVersion?: string | undefined; worktree?: { path: string; branch: string; repo: string; base: string; } | undefined; fanout?: string | undefined; profile?: string | undefined; term?: { submit: string; settleMs: number; waiting?: string | undefined; working?: string | undefined; typeTask?: string | undefined; } | undefined; resumeCommand?: string[] | undefined; taskInArgv?: boolean | undefined; resumable?: boolean | undefined; protocol?: boolean | undefined; requestId?: string | undefined; }; task?: string | undefined; catchUp?: boolean | undefined; }>; "schedule-rm": Schema<{ name: string; }>; "schedule-pause": Schema<{ name: string; paused: boolean; }>; "schedule-run": Schema<{ name: string; }>; hello: Schema<{ protocol: number; agent?: { name: string; version?: string | undefined; } | undefined; capabilities?: string[] | undefined; }>; list: Schema<{ all?: boolean | undefined; cwd?: string | undefined; }>; dispatch: Schema<{ cwd: string; sessionFile: string; command: string[]; env: Record; name: string; origin: "bg" | "dispatch" | "adopt" | "fork"; kind?: "shell" | "pi" | undefined; model?: string | undefined; thinking?: string | undefined; agent?: string | undefined; workspaceEnv?: "shell" | "off" | "direnv" | undefined; envDeny?: string[] | undefined; envForce?: string[] | undefined; piVersion?: string | undefined; worktree?: { path: string; branch: string; repo: string; base: string; } | undefined; fanout?: string | undefined; profile?: string | undefined; term?: { submit: string; settleMs: number; waiting?: string | undefined; working?: string | undefined; typeTask?: string | undefined; } | undefined; resumeCommand?: string[] | undefined; taskInArgv?: boolean | undefined; resumable?: boolean | undefined; protocol?: boolean | undefined; requestId?: string | undefined; }>; stop: Schema<{ id: string; }>; rm: Schema<{ id: string; }>; resolve: Schema<{ query: string; }>; status: Schema<{}>; shutdown: Schema<{ keepWorkers?: boolean | undefined; }>; subscribe: Schema<{}>; report: Schema<{ id: string; token: string; report: { state: "done" | "working" | "blocked" | "failed"; status: "waiting" | "busy" | "idle"; waitingFor: "dialog" | "question" | "first-prompt" | null; summary: string | null; question: string | null; choices: string[]; tool: string | null; error: string | null; name: string | null; model: string | null; thinking?: string | null | undefined; context?: { tokens: number | null; window: number; percent: number | null; } | null | undefined; usage?: UsageInfo | null | undefined; attachSignal?: boolean | undefined; attachRepaint?: boolean | undefined; agentItems?: boolean | undefined; remoteAt?: number | undefined; prLinks?: string[] | undefined; }; }>; reply: Schema<{ id: string; text: string; mode?: "steer" | "followUp" | undefined; requestId?: string | undefined; }>; ack: Schema<{ id: string; token: string; seq: number; exact?: boolean | undefined; }>; respawn: Schema<{ id?: string | undefined; all?: boolean | undefined; restart?: boolean | undefined; prompt?: string | undefined; }>; pin: Schema<{ id: string; pinned: boolean; }>; rename: Schema<{ id: string; name: string; }>; reorder: Schema<{ ids: string[]; key: string; }>; peer_register: Schema<{ name: string; cwd: string; pid: number; session?: string | undefined; }>; peers: Schema<{}>; send: Schema<{ to: string; message: string; }>; spawn: Schema<{ launch: { cwd: string; sessionFile: string; command: string[]; env: Record; name: string; origin: "bg" | "dispatch" | "adopt" | "fork"; kind?: "shell" | "pi" | undefined; model?: string | undefined; thinking?: string | undefined; agent?: string | undefined; workspaceEnv?: "shell" | "off" | "direnv" | undefined; envDeny?: string[] | undefined; envForce?: string[] | undefined; piVersion?: string | undefined; worktree?: { path: string; branch: string; repo: string; base: string; } | undefined; fanout?: string | undefined; profile?: string | undefined; term?: { submit: string; settleMs: number; waiting?: string | undefined; working?: string | undefined; typeTask?: string | undefined; } | undefined; resumeCommand?: string[] | undefined; taskInArgv?: boolean | undefined; resumable?: boolean | undefined; protocol?: boolean | undefined; requestId?: string | undefined; }; }>; handback: Schema<{ state: "done" | "blocked" | "failed"; result: string | null; question: string | null; error: string | null; }>; peer_ack: Schema<{ ref: string; }>; events: Schema<{ after?: number | undefined; limit?: number | undefined; id?: string | undefined; }>; watch: Schema<{ id: string; when: "idle" | "ended"; }>; concierge: Schema<{ action: "on"; launch?: { cwd: string; sessionFile: string; command: string[]; env: Record; name: string; origin: "bg" | "dispatch" | "adopt" | "fork"; kind?: "shell" | "pi" | undefined; model?: string | undefined; thinking?: string | undefined; agent?: string | undefined; workspaceEnv?: "shell" | "off" | "direnv" | undefined; envDeny?: string[] | undefined; envForce?: string[] | undefined; piVersion?: string | undefined; worktree?: { path: string; branch: string; repo: string; base: string; } | undefined; fanout?: string | undefined; profile?: string | undefined; term?: { submit: string; settleMs: number; waiting?: string | undefined; working?: string | undefined; typeTask?: string | undefined; } | undefined; resumeCommand?: string[] | undefined; taskInArgv?: boolean | undefined; resumable?: boolean | undefined; protocol?: boolean | undefined; requestId?: string | undefined; } | undefined; } | { action: "off"; } | { action: "status"; } | { action: "answer"; answer: "never" | "routine" | "always"; } | { action: "act"; act: boolean; } | { action: "undo"; }>; "concierge-ask": Schema<{ text: string; }>; "concierge-say": Schema<{ text: string; kind: "answer" | "info" | "need"; }>; "concierge-policy": Schema>; "concierge-suggest": Schema<{ id: string; text: string; why?: string | undefined; }>; "concierge-reply": Schema<{ id: string; text: string; why?: string | undefined; }>; "concierge-act": Schema<{ what: "stop" | "respawn"; id: string; why?: string | undefined; } | { what: "dispatch"; launch: { cwd: string; sessionFile: string; command: string[]; env: Record; name: string; origin: "bg" | "dispatch" | "adopt" | "fork"; kind?: "shell" | "pi" | undefined; model?: string | undefined; thinking?: string | undefined; agent?: string | undefined; workspaceEnv?: "shell" | "off" | "direnv" | undefined; envDeny?: string[] | undefined; envForce?: string[] | undefined; piVersion?: string | undefined; worktree?: { path: string; branch: string; repo: string; base: string; } | undefined; fanout?: string | undefined; profile?: string | undefined; term?: { submit: string; settleMs: number; waiting?: string | undefined; working?: string | undefined; typeTask?: string | undefined; } | undefined; resumeCommand?: string[] | undefined; taskInArgv?: boolean | undefined; resumable?: boolean | undefined; protocol?: boolean | undefined; requestId?: string | undefined; }; why?: string | undefined; }>; "concierge-order": Schema<{ action: "list"; } | { action: "add"; text: string; when?: string | undefined; } | { action: "rm"; id: number; } | { action: "applied"; id: number; text?: string | undefined; }>; task: Schema<{ action: "list"; project?: string | undefined; } | { action: "add"; title: string; detail?: string | undefined; after?: number[] | undefined; project?: string | null | undefined; } | { action: "cleanup"; dry?: boolean | undefined; } | { action: "claim"; id: number; } | { action: "release"; id: number; } | { action: "done"; id: number; result?: string | undefined; } | { action: "drop"; id: number; } | { action: "assign"; id: number; to: string; } | { action: "prepare"; id: number; } | { action: "start"; id: number; launch: { cwd: string; sessionFile: string; command: string[]; env: Record; name: string; origin: "bg" | "dispatch" | "adopt" | "fork"; kind?: "shell" | "pi" | undefined; model?: string | undefined; thinking?: string | undefined; agent?: string | undefined; workspaceEnv?: "shell" | "off" | "direnv" | undefined; envDeny?: string[] | undefined; envForce?: string[] | undefined; piVersion?: string | undefined; worktree?: { path: string; branch: string; repo: string; base: string; } | undefined; fanout?: string | undefined; profile?: string | undefined; term?: { submit: string; settleMs: number; waiting?: string | undefined; working?: string | undefined; typeTask?: string | undefined; } | undefined; resumeCommand?: string[] | undefined; taskInArgv?: boolean | undefined; resumable?: boolean | undefined; protocol?: boolean | undefined; requestId?: string | undefined; }; } | { action: "merge"; id: number; mode?: "ff" | "no-ff" | undefined; } | { action: "back"; id: number; note?: string | undefined; } | { action: "abort"; id: number; } | { action: "commit"; id: number; message?: string | undefined; } | { action: "approve"; id: number; dry?: boolean | undefined; hash?: string | undefined; } | { action: "verify"; id: number; } | { action: "pass"; id: number; } | { action: "comment"; id: number; comment: { file: string; line: number; text: string; lineText?: string | undefined; tip?: string | undefined; }; } | { action: "uncomment"; id: number; comment: { file: string; line: number; at: number; }; } | { action: "shelve"; id: number; } | { action: "pr"; id: number; dry?: boolean | undefined; hash?: string | undefined; }>; }; /** Every op's result. */ export declare const ResultSchemas: { ping: Schema<{ pid: number; version: string; }>; schedules: Schema<{ schedules: { name: string; when: string; task: string | null; agent: string; cwd: string; model: string | null; paused: boolean; catchUp: boolean; nextAt: number | null; lastRunAt: number | null; lastJob: string | null; lastSkip: { at: number; why: string; } | null; }[]; }>; "schedule-add": Schema<{ name: string; when: string; task: string | null; agent: string; cwd: string; model: string | null; paused: boolean; catchUp: boolean; nextAt: number | null; lastRunAt: number | null; lastJob: string | null; lastSkip: { at: number; why: string; } | null; }>; "schedule-rm": Schema<{ name: string; }>; "schedule-pause": Schema<{ name: string; when: string; task: string | null; agent: string; cwd: string; model: string | null; paused: boolean; catchUp: boolean; nextAt: number | null; lastRunAt: number | null; lastJob: string | null; lastSkip: { at: number; why: string; } | null; }>; "schedule-run": Schema<{ name: string; id: string; }>; hello: Schema<{ protocol: number; daemon: { name: "roost"; version: string; }; capabilities: string[]; }>; list: Schema<{ jobs: { id: string; cwd: string; kind: "shell" | "pi"; startedAt: number; state: "done" | "working" | "blocked" | "failed" | "stopped"; pid: number | null; status: "waiting" | "busy" | "idle" | null; waitingFor: "dialog" | "question" | "first-prompt" | null; sessionFile: string; name: string; endedAt: number | null; summary: string | null; question: string | null; choices: string[]; model: string | null; thinking: string | null; context: { tokens: number | null; window: number; percent: number | null; } | null; error: string | null; stateSince: number; reaped: boolean; pinned: boolean; order: number | null; orderKey: string | null; usage?: UsageInfo | null | undefined; parentSession?: string | null | undefined; rootSession?: string | null | undefined; parentOpen?: boolean | undefined; agent?: string | null | undefined; prs?: PrInfo[] | undefined; worktree?: { path: string; branch: string; base?: string | undefined; } | null | undefined; fanout?: string | null | undefined; profile?: string | undefined; schedule?: string | null | undefined; capabilities?: string[] | undefined; role?: "concierge" | null | undefined; suggested?: { text: string; why: string | null; at: number; } | null | undefined; task?: string | null | undefined; queued?: number | undefined; }[]; }>; dispatch: Schema<{ id: string; name: string; }>; stop: Schema<{ id: string; }>; rm: Schema<{ id: string; worktree?: { path: string; branch: string; removed: boolean; branchKept: boolean; reason?: string | undefined; } | undefined; }>; resolve: Schema<{ id: string; }>; status: Schema<{ pid: number; version: string; socketDir: string; liveJobs: number; totalJobs: number; ptyError: string | null; startedAt: number; }>; shutdown: Schema<{}>; subscribe: Schema<{}>; report: Schema<{}>; reply: Schema<{ delivered: boolean; saved: boolean; stopped?: boolean | undefined; respawned?: boolean | undefined; error?: string | undefined; duplicate?: boolean | undefined; }>; ack: Schema<{}>; respawn: Schema<{ results: { id: string; started: boolean; error?: string | undefined; }[]; }>; pin: Schema<{ id: string; pinned: boolean; }>; rename: Schema<{ id: string; name: string; }>; reorder: Schema<{}>; peer_register: Schema<{ id: string; }>; peers: Schema<{ peers: { id: string; name: string; relation: "parent" | "child" | "sibling" | "tree" | "external"; role: "job" | "foreground"; state: "done" | "working" | "blocked" | "failed" | "stopped" | "live"; status: "waiting" | "busy" | "idle" | null; waitingFor: "dialog" | "question" | "first-prompt" | null; summary: string | null; question: string | null; cwd: string; }[]; }>; send: Schema<{ outcome: "stopped" | "queued" | "delivered" | "started" | "not running" | "duplicate"; id: string; name: string; relation: "parent" | "child" | "sibling" | "tree" | "external"; dialog?: boolean | undefined; }>; spawn: Schema<{ id: string; name: string; }>; handback: Schema<{ routed: boolean; }>; peer_ack: Schema<{}>; events: Schema<{ events: RoostEvent[]; cursor: number; }>; watch: Schema<{ id: string; name: string; when: "idle" | "ended"; fired: boolean; }>; concierge: Schema; "concierge-ask": Schema<{ id: string; }>; "concierge-say": Schema<{}>; "concierge-policy": Schema<{ answer: "never" | "routine" | "always"; act: boolean; }>; "concierge-suggest": Schema<{ id: string; name: string; }>; "concierge-reply": Schema<{ id: string; name: string; }>; "concierge-act": Schema<{ id: string; name: string; }>; "concierge-order": Schema<{ orders: StandingOrder[]; order?: StandingOrder | undefined; }>; task: Schema<{ tasks: BoardTask[]; task?: BoardTask | undefined; sent?: "stopped" | "queued" | "delivered" | "started" | "not running" | "duplicate" | undefined; job?: { id: string; name: string; } | undefined; note?: string | undefined; hash?: string | undefined; workspace?: { path: string; branch: string; baseRef: string; baseSha: string; sourceDirty?: boolean | undefined; } | undefined; }>; }; export type OpArgs = { [O in keyof typeof ArgSchemas]: Infer<(typeof ArgSchemas)[O]>; }; export type OpResults = { [O in keyof typeof ResultSchemas]: Infer<(typeof ResultSchemas)[O]>; }; /** The names of the ops, in the order of the schemas. */ export declare const OPS: (keyof typeof ArgSchemas)[]; /** M76, M77: the ops whose arguments the daemon checks at its entry: all of them. Each field is loose or carries the words its hand check said. */ export declare const ENTRY_CHECKED: ReadonlySet; /** M76: what is wrong with an op's arguments (the daemon's words), or undefined. Arguments that are not an object count as none. */ export declare function argsProblem(op: string, args: unknown): string | undefined; export {};