/** * Shared chrome for bars stacked directly above the chat input (sub-agents, * goal, todos, approvals, …). * * Contract: every stackable bar renders an outer wrapper that is a direct * sibling of the other bars and carries `INPUT_BAR_GROUP_CLASS` plus the * `INPUT_BAR_WRAPPER_PROPS`-style data attributes (`data-input-bar` and * `data-active="true" | "false"`). The inner card then appends * `INPUT_BAR_ATTACHED_CARD_CLASS` to its own border/background classes. * * By default the card visually connects to the chat input (open bottom edge, * top-only rounding, tucked under the input). When another active bar sits * below it in the stack, the `group-has` sibling selector switches the card * to a detached floating look — full rounded corners, restored bottom border, * and spacing — so only the bottom-most active bar merges with the input. */ export declare const INPUT_BAR_GROUP_CLASS = "group/inputbar"; export declare const INPUT_BAR_ATTACHED_CARD_CLASS = "rounded-t-xl border-b-0 -mb-1 pb-2 group-has-[~[data-input-bar][data-active=true]]/inputbar:rounded-xl group-has-[~[data-input-bar][data-active=true]]/inputbar:border-b group-has-[~[data-input-bar][data-active=true]]/inputbar:mb-1 group-has-[~[data-input-bar][data-active=true]]/inputbar:pb-0"; /** Builds the wrapper data attributes marking a stackable input bar. */ export declare function inputBarWrapperProps(isActive: boolean): { readonly 'data-input-bar': true; readonly 'data-active': "true" | "false"; }; //# sourceMappingURL=input-bar-chrome.d.ts.map