import type { Lix } from "../../lix/open-lix.js";
import type { LixEntity, LixEntityCanonical } from "../types.js";
/**
 * Attaches a conversation to an entity (creates mapping).
 *
 * @example
 * // Attach an existing conversation to an entity
 * await attachConversation({
 *   lix,
 *   entity: { entity_id: "para_123", schema_key: "markdown_paragraph", file_id: "README.md" },
 *   conversation: { id: "conv_123" }
 * });
 *
 * @example
 * // Scope the mapping to a specific version
 * await attachConversation({
 *   lix,
 *   entity: { entity_id: "para_123", schema_key: "markdown_paragraph", file_id: "README.md" },
 *   conversation: { id: "conv_123" },
 *   versionId: "v1"
 * });
 */
export declare function attachConversation(args: {
    lix: Pick<Lix, "db">;
    entity: LixEntity | LixEntityCanonical;
    conversation: {
        id: string;
    };
    versionId?: string;
}): Promise<void>;
/**
 * Detaches a conversation from an entity (removes mapping).
 *
 * @example
 * await detachConversation({
 *   lix,
 *   entity: { entity_id: "para_123", schema_key: "markdown_paragraph", file_id: "README.md" },
 *   conversation: { id: "conv_123" }
 * });
 */
export declare function detachConversation(args: {
    lix: Pick<Lix, "db">;
    entity: LixEntity | LixEntityCanonical;
    conversation: {
        id: string;
    };
    versionId?: string;
}): Promise<void>;
//# sourceMappingURL=attach-conversation.d.ts.map