import { __name } from "../_virtual/_rolldown/runtime.mjs"; import { PropsWithChildren } from "react"; import { JSX as JSX$1 } from "react/jsx-runtime"; import { ExclusiveUnion } from "@likec4/core/types"; //#region src/context/DiagramFeatures.d.ts declare const FeatureNames: readonly ["Controls", "Editor", "AISemanticLayout", "ReadOnly", "FocusMode", "NavigateTo", "ElementDetails", "RelationshipDetails", "RelationshipBrowser", "Search", "NavigationButtons", "Notations", "DynamicViewWalkthrough", "FitView", "CompareWithLatest", "Notes", "Vscode", "ElementTags"]; export type FeatureName = typeof FeatureNames[number]; export type TogglableFeature = ('ReadOnly' | 'CompareWithLatest') & FeatureName; export type EnabledFeatures = { [P in `enable${FeatureName}`]: boolean; }; export declare function useEnabledFeatures(): EnabledFeatures; /** * Renders children only if the specified feature is enabled * @param feature Feature name * @param and Additional AND condition * @example * * ... * */ export declare function IfEnabled({ feature, children, and }: PropsWithChildren<{ feature: FeatureName; and?: boolean; }>): JSX$1.Element | null; export declare function IfNotEnabled({ feature, children }: PropsWithChildren<{ feature: FeatureName; }>): JSX$1.Element | null; export declare function IfReadOnly({ children }: PropsWithChildren): JSX$1.Element | null; export declare function IfNotReadOnly({ children }: PropsWithChildren): JSX$1.Element | null; //#endregion