import type { ComputedRef, Ref } from "vue"; export interface XyLayoutSiderRegistry { addSider: (id: string) => void; hasSider: ComputedRef; removeSider: (id: string) => void; siderIds: Ref; } export interface XyLayoutSiderContext { collapsed: Readonly>; } export interface XyLayoutSiderTriggerOptions { below?: boolean; collapsible?: boolean; trigger?: false | string; zeroWidth?: boolean; } export interface XyLayoutSiderTriggerState { hasTrigger: boolean; triggerVisible: boolean; zeroWidthTrigger: boolean; } export type XyLayoutZeroTriggerDirection = "left" | "right"; export declare function createLayoutSiderRegistry(): XyLayoutSiderRegistry; export declare function provideLayoutContext(context: XyLayoutSiderRegistry): void; export declare function useLayoutContext(): XyLayoutSiderRegistry; export declare function provideLayoutSiderContext(context: XyLayoutSiderContext): void; export declare function useLayoutSiderContext(): XyLayoutSiderContext; export declare function isNumericLayoutSize(value: number | string): boolean; export declare function toLayoutCssSize(value: number | string): string; export declare function isZeroLayoutSize(value: number | string): boolean; export declare function getLayoutSiderZeroTriggerDirection(reverseArrow: boolean | undefined): XyLayoutZeroTriggerDirection; export declare function getLayoutSiderTriggerState(options: XyLayoutSiderTriggerOptions): XyLayoutSiderTriggerState;