import type { Alignment } from "../layout"; import type { ComponentSizingDesignerSettings } from "./ComponentSizingDesignerSettings"; import type { Visibility } from "./layoutSettings"; /** * VertiGIS Studio App Designer settings for a component's layout attributes. */ export interface LayoutDesignerSettings { /** * Whether the component is available. */ available?: boolean; /** * The gap of the component represented in em units (number) or spacing * units (string) represented as the units followed by an 's' eg: '1s`. */ gap?: number | string; /** * The horizontal alignment of the component's content. */ halign?: Alignment | undefined; /** * The visibility of the component which determines the 'active' property. */ visibility: Visibility; /** * The margin of the component represented in em units (number) or spacing * units (string) represented as the units followed by an 's' eg: '1s`. */ margin?: number | string; /** * The padding of the component represented in em units (number) or spacing * units (string) represented as the units followed by an 's' eg: '1s`. */ padding?: number | string; /** * The sizing of any child components. */ sizing?: ComponentSizingDesignerSettings[]; /** * The named slot of the parent component in which this component will * render. */ slot?: string; /** * The vertical alignment of the component's content. */ valign?: Alignment | undefined; /** * The models that this component imports. */ importModels?: string | string[]; }