import type { Lix } from "../lix/open-lix.js";
import type { LixChangeSet, LixChangeSetElement } from "./schema-definition.js";
import type { NewState } from "../engine/entity-views/types.js";
/**
 * Creates a change set and optionally attaches elements and labels.
 *
 * Change sets are the building blocks of versions and checkpoints. This
 * function inserts all provided relations in a single transaction and
 * returns the newly created record.
 *
 * @example
 * ```ts
 * const cs = await createChangeSet({ lix, elements: [{ change_id, entity_id }] })
 * ```
 */
export declare function createChangeSet(args: {
    lix: Lix;
    id?: string;
    elements?: Omit<NewState<LixChangeSetElement>, "change_set_id">[];
    /** Version ID where the change set should be stored. Defaults to active version */
    lixcol_version_id?: string;
}): Promise<LixChangeSet & {
    lixcol_version_id: string;
}>;
//# sourceMappingURL=create-change-set.d.ts.map