/** @packageDocumentation
 * @module ToolSettings
 */
import type { DialogItem, DialogPropertySyncItem } from "@itwin/appui-abstract";
import { UiLayoutDataProvider } from "@itwin/appui-abstract";
import type { ConfigurableCreateInfo } from "../configurableui/ConfigurableUiControl";
import type { SyncToolSettingsPropertiesEventArgs } from "../framework/FrameworkToolSettings";
import { ToolUiProvider } from "./ToolUiProvider";
/** @internal */
/** ToolSettingsUiDataProvider keeps tool data in sync with UI display */
declare class ToolSettingsUiDataProvider extends UiLayoutDataProvider {
    supplyDialogItems(): DialogItem[] | undefined;
    applyUiPropertyChange: (syncItem: DialogPropertySyncItem) => void;
}
/** ToolUiProvider class that informs ConfigurableUi that Tool Settings are provided for the specified tool.
 * @internal
 */
export declare class DefaultToolSettingsProvider extends ToolUiProvider {
    constructor(info: ConfigurableCreateInfo, options: any);
    get uiDataProvider(): ToolSettingsUiDataProvider;
    updateToolSettingsNodes(): void;
    reloadPropertiesFromTool(): void;
    onInitialize(): void;
    syncToolSettingsProperties(args: SyncToolSettingsPropertiesEventArgs): void;
}
export {};
//# sourceMappingURL=DefaultToolSettingsProvider.d.ts.map