import type { components, paths } from '../generated/api.js';
import { WorkspaceScopedResource } from './base.js';
export type ListUnificationRulesParams = NonNullable<paths['/v1/{workspace_id}/unification-rules']['get']['parameters']['query']>;
/**
 * Manage entity unification rules — declarative joins that fold duplicate
 * world-model entities into a single canonical record. Rules are evaluated
 * on ingest; the surviving entity inherits properties from its merge sources.
 *
 * @beta New in this release; surface may evolve.
 */
export declare class UnificationRulesResource extends WorkspaceScopedResource {
    /** Create a new unification rule */
    create(body: components['schemas']['CreateUnificationRuleRequest']): Promise<{
        accuracy: number | null;
        agent_task_id: string | null;
        created_at: string;
        created_by: string | null;
        data_source_id: string | null;
        description: string | null;
        events_processed: number;
        id: string;
        is_active: boolean;
        last_applied_at: string | null;
        name: string;
        rule_config: {
            [x: string]: unknown;
        };
        rule_type: string;
        source_event_type: string | null;
        target_entity_type: string | null;
        updated_at: string;
        workspace_id: string;
    } & import("../index.js").ResponseMetadata>;
    /** List unification rules in the workspace */
    list(params?: ListUnificationRulesParams): Promise<{
        continuation_token?: number | null | undefined;
        has_more: boolean;
        items: {
            accuracy: number | null;
            agent_task_id: string | null;
            created_at: string;
            created_by: string | null;
            data_source_id: string | null;
            description: string | null;
            events_processed: number;
            id: string;
            is_active: boolean;
            last_applied_at: string | null;
            name: string;
            rule_config: {
                [x: string]: unknown;
            };
            rule_type: string;
            source_event_type: string | null;
            target_entity_type: string | null;
            updated_at: string;
            workspace_id: string;
        }[];
        total?: number | null | undefined;
    } & import("../index.js").ResponseMetadata>;
    listAutoPaging(params?: ListUnificationRulesParams): AsyncGenerator<{
        accuracy: number | null;
        agent_task_id: string | null;
        created_at: string;
        created_by: string | null;
        data_source_id: string | null;
        description: string | null;
        events_processed: number;
        id: string;
        is_active: boolean;
        last_applied_at: string | null;
        name: string;
        rule_config: {
            [x: string]: unknown;
        };
        rule_type: string;
        source_event_type: string | null;
        target_entity_type: string | null;
        updated_at: string;
        workspace_id: string;
    }, any, any>;
    /** Get a single unification rule */
    get(ruleId: string): Promise<{
        accuracy: number | null;
        agent_task_id: string | null;
        created_at: string;
        created_by: string | null;
        data_source_id: string | null;
        description: string | null;
        events_processed: number;
        id: string;
        is_active: boolean;
        last_applied_at: string | null;
        name: string;
        rule_config: {
            [x: string]: unknown;
        };
        rule_type: string;
        source_event_type: string | null;
        target_entity_type: string | null;
        updated_at: string;
        workspace_id: string;
    } & import("../index.js").ResponseMetadata>;
    /** Update a unification rule */
    update(ruleId: string, body: components['schemas']['UpdateUnificationRuleRequest']): Promise<{
        accuracy: number | null;
        agent_task_id: string | null;
        created_at: string;
        created_by: string | null;
        data_source_id: string | null;
        description: string | null;
        events_processed: number;
        id: string;
        is_active: boolean;
        last_applied_at: string | null;
        name: string;
        rule_config: {
            [x: string]: unknown;
        };
        rule_type: string;
        source_event_type: string | null;
        target_entity_type: string | null;
        updated_at: string;
        workspace_id: string;
    } & import("../index.js").ResponseMetadata>;
    /** Delete a unification rule */
    delete(ruleId: string): Promise<undefined>;
}
//# sourceMappingURL=unification-rules.d.ts.map