import type { AuthData, Can, GenericModels, GetZeroMutators, MutatorContext, Transaction } from '../types'; import type { AggregateSet } from 'orez-lite/aggregate'; export type ValidateMutationFn = (args: { authData: AuthData | null; mutatorName: string; tableName: string; args: unknown; }) => void | Promise; export type { ValidateMutationFn as CreateMutatorsValidateFn }; export declare function createMutators({ environment, authData, createServerActions, enqueueTask, enqueueAction, bindCan, models, validateMutation, mutationValidators, resolveAuthData, aggregates, }: { environment: 'server' | 'client'; authData: AuthData | null; bindCan: (tx: Transaction, authData: AuthData | null) => Can; models: Models; enqueueTask?: NonNullable['enqueueTask']; enqueueAction?: NonNullable['enqueueAction']; createServerActions?: () => Record; validateMutation?: ValidateMutationFn; /** valibot schemas keyed by model.mutationName, auto-validates args before running */ mutationValidators?: Record>; resolveAuthData?: () => AuthData | null; aggregates?: AggregateSet; }): GetZeroMutators; //# sourceMappingURL=createMutators.d.ts.map