/** * How a Talk operation is declared. * * Split out of `manifest.ts` so a domain can own its own entries without either * file importing the other back. */ import type { JsonObject } from "../../shared/types.js"; import type { TalkControlOperation, TalkControlParameters } from "./types.js"; export declare const string: (description: string, values?: readonly string[]) => JsonObject; export declare const integer: (description: string) => JsonObject; export declare function params(properties: JsonObject, required?: string[]): TalkControlParameters; /** * A gateway operation. Every write is `operatorOnly` by construction: the * authority to mutate the company is the operator's, and a manifest entry * cannot opt out of it by forgetting a field. */ export declare function gateway(name: string, description: string, parameters: TalkControlParameters, intent: string, policy: { mutability: "read" | "write"; verification: string; }): TalkControlOperation; //# sourceMappingURL=operation-builders.d.ts.map