import type { BeEvent } from "@itwin/core-bentley";
interface Item {
    id: string;
    isActive?: boolean;
}
type ActiveToolIdSynchedItem<T> = Item | (Item & {
    items: T[];
});
interface ActiveToolIdSynchedHost {
    activeToolId: string;
    onToolActivatedEvent: BeEvent<(args: {
        toolId: string;
    }) => void>;
}
/**
 * Synch the provided items to only show the item with id === activeToolId to be
 * active, as determined by the UiFramework.frontstages.activeToolId.
 * @param itemsToSynch List of items to keep in synch.
 * @param syncHost Source of information to synch to (UiFramework.frontstages)
 * @returns Up to date itemsToSynch.
 * @internal
 */
export declare function useActiveToolIdSynchedItems<T extends ActiveToolIdSynchedItem<T>>(itemsToSynch: T[], syncHost: ActiveToolIdSynchedHost): T[];
export {};
//# sourceMappingURL=useActiveToolIdSynchedItems.d.ts.map