/** @packageDocumentation
 * @module UiProvider
 */
import "./DefaultDialogGridContainer.scss";
import * as React from "react";
import type { DialogRow } from "@itwin/appui-abstract";
import { UiLayoutDataProvider } from "@itwin/appui-abstract";
import type { ToolSettingsEntry } from "../widget-panels/ToolSettings";
/** Utility methods to generate react ui from DialogRow specs
 * @internal
 */
export declare class ComponentGenerator {
    private _uiDataProvider;
    private _onCancel?;
    constructor(_uiDataProvider: UiLayoutDataProvider, _onCancel?: (() => void) | undefined);
    get uiDataProvider(): UiLayoutDataProvider;
    private getEditor;
    private generateRowWithButtonGroupEditors;
    private generateEntryWithButtonGroupEditors;
    private getEditorLabel;
    private getLeftLockAndLabel;
    private getInlineLabelAndEditor;
    private getRowWithMultipleEditors;
    private getDivForRow;
    getRow(row: DialogRow, rowIndex: number): React.ReactNode;
    getToolSettingsEntry(row: DialogRow, rowIndex: number): ToolSettingsEntry;
    /** ToolSettingsEntries are used by the tool settings bar. */
    getToolSettingsEntries(): ToolSettingsEntry[];
}
//# sourceMappingURL=ComponentGenerator.d.ts.map