/**
 * @fileoverview Shared Record Drilldown Panel
 *
 * A single, reusable side panel that lists records behind a selection on the
 * Knowledge Hub "Visualize" surface. It is driven entirely by inputs and emits
 * record-open intents up to the host — it never imports NavigationService, so it
 * stays a generic child that the KH resource host wires to navigation.
 *
 * Consumed by BOTH:
 *  - Cluster-point selection: the host passes a single record row.
 *  - Tag-cloud word selection: the host passes the records carrying that tag.
 */
import { EventEmitter } from '@angular/core';
import * as i0 from "@angular/core";
/**
 * A single record row shown in the drilldown panel. `EntityName` + `RecordID`
 * are the open-intent payload; `Title`/`Subtitle`/`Weight` are display-only.
 */
export interface DrilldownRecord {
    /** Entity the record belongs to (e.g. 'MJ: Content Items' or a business entity). */
    EntityName: string;
    /** Primary-key URL segment used to open the record. */
    RecordID: string;
    /** Primary display label. */
    Title: string;
    /** Optional secondary line (source, content type, etc.). */
    Subtitle?: string;
    /** Optional weight/relevance shown as a chip (0.0 - 1.0). */
    Weight?: number;
}
/**
 * Emitted when the user asks to open one of the listed records. The host
 * translates this into a NavigationService call.
 */
export interface DrilldownOpenRequest {
    EntityName: string;
    RecordID: string;
}
export declare class RecordDrilldownComponent {
    /** Panel heading (e.g. the tag text or the selected record's label). */
    Title: string;
    /** Optional sub-heading under the title (e.g. "12 records"). */
    Subtitle: string;
    /** Icon class shown next to the title. */
    Icon: string;
    /** Whether the panel is visible. */
    Visible: boolean;
    /** Whether records are currently loading. */
    IsLoading: boolean;
    /** The records to list. */
    Records: DrilldownRecord[];
    /** Emitted when the user closes the panel. */
    Closed: EventEmitter<void>;
    /** Emitted when the user clicks a record to open it. */
    OpenRecord: EventEmitter<DrilldownOpenRequest>;
    OnClose(): void;
    OnOpen(record: DrilldownRecord): void;
    TrackByRecord(_index: number, record: DrilldownRecord): string;
    WeightPercent(weight: number | undefined): number;
    static ɵfac: i0.ɵɵFactoryDeclaration<RecordDrilldownComponent, never>;
    static ɵcmp: i0.ɵɵComponentDeclaration<RecordDrilldownComponent, "app-kh-record-drilldown", never, { "Title": { "alias": "Title"; "required": false; }; "Subtitle": { "alias": "Subtitle"; "required": false; }; "Icon": { "alias": "Icon"; "required": false; }; "Visible": { "alias": "Visible"; "required": false; }; "IsLoading": { "alias": "IsLoading"; "required": false; }; "Records": { "alias": "Records"; "required": false; }; }, { "Closed": "Closed"; "OpenRecord": "OpenRecord"; }, never, never, false, never>;
}
/** Tree-shaking prevention */
export declare function LoadRecordDrilldownComponent(): void;
//# sourceMappingURL=record-drilldown.component.d.ts.map