/**
 * Quint → TypeScript Transpiler
 *
 * Transpiles Quint `pure def` functions and `val` invariants into
 * TypeScript guard functions for runtime validation.
 *
 * Handles a subset of Quint syntax:
 * - pure def name(params): type = { body }
 * - val name: bool = expression
 * - if/else expressions
 * - and/or/not/implies operators
 * - comparison operators (==, !=, >=, <=, >, <)
 * - arithmetic (+, -, *, /, %)
 * - forall/exists quantifiers (transpiled to .every/.some)
 * - set operations (.contains, .size, .filter, .map, .union)
 */
export interface TranspiledGuard {
    name: string;
    kind: 'function' | 'invariant';
    quint: string;
    typescript: string;
    module: string;
    entity: string;
}
/**
 * Transpile all Quint files from entity modules into TypeScript guards.
 */
export declare function transpileEntityGuards(entitiesDir: string): TranspiledGuard[];
/**
 * Transpile a single Quint file into TypeScript guards.
 */
export declare function transpileQuintFile(content: string, entity: string, filename: string): TranspiledGuard[];
/**
 * Generate a TypeScript guards module from transpiled guards.
 */
export declare function generateGuardsModule(guards: TranspiledGuard[]): string;
export interface TranspiledAction {
    name: string;
    params: string;
    guards: string[];
    effects: string[];
    events: string[];
    quint: string;
    typescript: string;
    module: string;
    entity: string;
}
/**
 * Transpile Quint action definitions into async TypeScript methods.
 *
 * Quint actions follow the pattern:
 *   action name(params): bool = all {
 *     guard1,                          // → precondition check
 *     guard2,                          // → precondition check
 *     model' = { ...model, field: x }, // → prisma update
 *     emit(EventName, payload),        // → event emission
 *   }
 */
export declare function transpileActions(content: string, entity: string, filename: string): TranspiledAction[];
/**
 * Generate a TypeScript module from transpiled actions.
 */
export declare function generateActionsModule(actions: TranspiledAction[]): string;
//# sourceMappingURL=quint-transpiler.d.ts.map