import { SvelteComponentTyped } from "svelte"; import type { SvelteHTMLElements } from "svelte/elements"; export type ColumnSize = boolean | number; export type ColumnSizeDescriptor = { span?: ColumnSize; offset: number; }; export type ColumnBreakpoint = ColumnSize | ColumnSizeDescriptor; type $RestProps = SvelteHTMLElements["div"]; type $Props = { /** * Set to `true` to render a custom HTML element. * Props are destructured as `props` in the default slot. * @example * ```svelte * *
Content
*
* ``` * @default false */ as?: boolean; /** * Set to `true` to remove the gutter * @default false */ noGutter?: boolean; /** * Set to `true` to remove the left gutter * @default false */ noGutterLeft?: boolean; /** * Set to `true` to remove the right gutter * @default false */ noGutterRight?: boolean; /** * Set to `true` to add top and bottom padding to the column * @default false */ padding?: boolean; /** * Specify the aspect ratio of the column. * @default undefined */ aspectRatio?: "2x1" | "16x9" | "9x16" | "1x2" | "4x3" | "3x4" | "1x1"; /** * Set the small breakpoint. * @default undefined */ sm?: ColumnBreakpoint; /** * Set the medium breakpoint. * @default undefined */ md?: ColumnBreakpoint; /** * Set the large breakpoint. * @default undefined */ lg?: ColumnBreakpoint; /** * Set the extra large breakpoint. * @default undefined */ xlg?: ColumnBreakpoint; /** * Set the maximum breakpoint. * @default undefined */ max?: ColumnBreakpoint; children?: ( this: void, ...args: [{ props: { class: string; [key: string]: any } }] ) => void; [key: `data-${string}`]: unknown; }; export type ColumnProps = Omit<$RestProps, keyof $Props> & $Props; export default class Column extends SvelteComponentTyped< ColumnProps, Record, { default: { props: { class: string; [key: string]: any } } } > {}