import type { UniComponent } from '../../../_common/components/uni-component/uni-component.js';
import type { BaseCellRenderer } from './base-cell.js';
import type { CellRenderer, DataViewCellComponent } from './manager.js';
export interface Renderer<Data extends NonNullable<unknown> = NonNullable<unknown>, Value = unknown> {
    type: string;
    icon?: UniComponent;
    cellRenderer: CellRenderer<Data, Value>;
    detailCellRenderer?: CellRenderer<Data, Value>;
}
export declare class ColumnRendererHelper {
    private _columns;
    register(renderer: Renderer): void;
    get(type: Renderer['type']): Renderer;
    list(): Renderer[];
}
export declare const columnRenderer: ColumnRendererHelper;
export declare const createFromBaseCellRenderer: <Value, Data extends Record<string, unknown> = Record<string, unknown>>(renderer: new () => BaseCellRenderer<Value, Data>) => DataViewCellComponent;
//# sourceMappingURL=renderer.d.ts.map