import { DecisionFormValue, DecisionXml } from '../models'; /** * Derives a valid DMN decision key (an XML NCName) from a human-readable name. * The decision key doubles as the identifier referenced from a process' * business rule task, so it must be a stable, valid identifier. */ declare function toDecisionKey(name: string): string; /** * Derives the name of the `.dmn` file that is deployed for a created decision. */ declare function toDecisionFileName(name: string): string; /** * Builds a deployable DMN 1.3 decision table seeded with one input column per * provided input variable and a single output. Each input column gets its * process variable as the input expression and, optionally, a human-readable * label as the column header. Seeding this up front means the created table is * functional immediately - the user only has to add rules before deploying. */ declare function createDmnXml({ name, inputVariables }: DecisionFormValue): DecisionXml; /** * Reads the editable form values (decision name and input columns) from an * existing DMN XML document. */ declare function parseDecisionForm(xml: string): DecisionFormValue; /** * Patches an existing DMN XML document with a new decision name and set of input * columns, while preserving the decision key, outputs, rules and diagram. Input * columns are reconciled positionally: existing columns are updated (label + * expression), extra columns add an input (and a blank entry to every rule), and * removed columns drop the input (and their rule entries). */ declare function updateDmnXml(xml: string, { name, inputVariables }: DecisionFormValue): string; export { createDmnXml, toDecisionKey, toDecisionFileName, parseDecisionForm, updateDmnXml }; //# sourceMappingURL=dmn-template.d.ts.map