/** * Declared recipes for smrt-fields (#3719): small, user-facing units of * functionality an app or agent can pick instead of the whole package. * The scanner reads these statics into the `recipes` array of `manifest.json` * and `smrt-knowledge.json`; nothing here runs at that point. * * @packageDocumentation */ import { SmrtRecipe } from '@happyvertical/smrt-core'; import { FieldPolicy } from './models/FieldPolicy.js'; import { FieldPolicySuggestion } from './models/FieldPolicySuggestion.js'; import { FieldUsageCounter } from './models/FieldUsageCounter.js'; import { FieldUsageReportReceipt } from './models/FieldUsageReportReceipt.js'; /** * Form customization: let an organization (and each person) change what the * forms ask for. Defaults, labels, hints, order and basic/advanced/hidden * visibility are stored as sparse override rows over the code seed. * * There is no `nav` on purpose: the policy tables have no generated read * surface (reads would enumerate every tenant), so the one place people * manage this is the `settings-panel` surface below. */ export declare class FormCustomizationRecipe extends SmrtRecipe { static id: string; static help: string; static label: string; static summary: string; static synonyms: string[]; static models: (typeof FieldPolicy | typeof FieldPolicySuggestion | typeof FieldUsageCounter | typeof FieldUsageReportReceipt)[]; static runtime: "server"; static surfaces: readonly [{ readonly kind: "settings-panel"; readonly export: "@happyvertical/smrt-fields/svelte#FieldPolicyControlPanel"; readonly label: "Form defaults"; }]; } //# sourceMappingURL=recipes.d.ts.map