import { type DeleteOp, type InsertOp, type UpdateOp, type UpsertOp } from '../../../zero-protocol/src/push.ts';
import type { Schema } from '../../../zero-types/src/schema.ts';
import type { IVMSourceBranch } from './ivm-branch.ts';
import type { WriteTransaction } from './replicache-types.ts';
export type { TableMutator } from '../../../zql/src/mutate/crud.ts';
export declare function insert(tx: WriteTransaction, arg: InsertOp, schema: Schema, ivmBranch: IVMSourceBranch | undefined): Promise<void>;
export declare function upsert(tx: WriteTransaction, arg: InsertOp | UpsertOp, schema: Schema, ivmBranch: IVMSourceBranch | undefined): Promise<void>;
export declare function update(tx: WriteTransaction, arg: UpdateOp, schema: Schema, ivmBranch: IVMSourceBranch | undefined): Promise<void>;
declare function deleteImpl(tx: WriteTransaction, arg: DeleteOp, schema: Schema, ivmBranch: IVMSourceBranch | undefined): Promise<void>;
export { deleteImpl as delete };
//# sourceMappingURL=crud-impl.d.ts.map