import type { Container, AdaptiveElement } from '../models.js'; import { ContainerStyle, Spacing, VerticalAlignment } from '../enums.js'; import { TextBlockBuilder } from './TextBlockBuilder.js'; import { ImageBuilder } from './ImageBuilder.js'; import { ActionBuilder } from './ActionBuilder.js'; import { BackgroundImageBuilder } from './BackgroundImageBuilder.js'; import { ColumnSetBuilder } from './ColumnSetBuilder.js'; import { FactSetBuilder } from './FactSetBuilder.js'; import { RichTextBlockBuilder } from './RichTextBlockBuilder.js'; import { ActionSetBuilder } from './ActionSetBuilder.js'; /** Fluent builder for {@link Container} elements. */ export declare class ContainerBuilder { private readonly container; /** Sets the unique identifier. @param id The unique identifier. @returns The builder instance for method chaining. */ withId(id: string): this; /** Sets the container style. @param style The container style. @returns The builder instance for method chaining. */ withStyle(style: ContainerStyle): this; /** Sets the vertical alignment of the container content. @param alignment The vertical alignment. @returns The builder instance for method chaining. */ withVerticalContentAlignment(alignment: VerticalAlignment): this; /** Sets whether the container bleeds into the parent container. @param bleed True to enable bleed. @returns The builder instance for method chaining. */ withBleed(bleed?: boolean): this; /** Sets the minimum height of the container. @param minHeight The minimum height (e.g. `'100px'`). @returns The builder instance for method chaining. */ withMinHeight(minHeight: string): this; /** Sets the spacing above the element. @param spacing The spacing value. @returns The builder instance for method chaining. */ withSpacing(spacing: Spacing): this; /** Sets whether a separator line is displayed above the element. @param separator True to show a separator. @returns The builder instance for method chaining. */ withSeparator(separator: boolean): this; /** Sets whether the element is visible. @param isVisible True to show the element. @returns The builder instance for method chaining. */ withIsVisible(isVisible: boolean): this; /** Sets the height of the element. @param height The height ('auto' or 'stretch'). @returns The builder instance for method chaining. */ withHeight(height: string): this; /** Sets the fallback behavior when the element is unsupported. @param fallback The fallback value ('drop' or an element). @returns The builder instance for method chaining. */ withFallback(fallback: 'drop' | AdaptiveElement): this; /** Sets the feature requirements for the element. @param key The feature name. @param version The minimum required version. @returns The builder instance for method chaining. */ withRequires(key: string, version: string): this; /** Sets whether content should be laid out right-to-left. @param rtl True for RTL. @returns The builder instance for method chaining. */ withRtl(rtl?: boolean): this; /** Sets the background image of the container.@param configure A callback to configure the BackgroundImageBuilder. @returns The builder instance for method chaining. */ withBackgroundImage(configure: (b: BackgroundImageBuilder) => void): this; /** Sets the action to invoke when the container is selected. @param configure A callback to configure the ActionBuilder. @returns The builder instance for method chaining. */ withSelectAction(configure: (b: ActionBuilder) => void): this; /** Adds a TextBlock element. @param configure A callback to configure the TextBlockBuilder. @returns The builder instance for method chaining. */ addTextBlock(configure: (b: TextBlockBuilder) => void): this; /** Adds an Image element. @param configure A callback to configure the ImageBuilder. @returns The builder instance for method chaining. */ addImage(configure: (b: ImageBuilder) => void): this; /** Adds a nested Container element. @param configure A callback to configure the ContainerBuilder. @returns The builder instance for method chaining. */ addContainer(configure: (b: ContainerBuilder) => void): this; /** Adds a ColumnSet element. @param configure A callback to configure the ColumnSetBuilder. @returns The builder instance for method chaining. */ addColumnSet(configure: (b: ColumnSetBuilder) => void): this; /** Adds a FactSet element. @param configure A callback to configure the FactSetBuilder. @returns The builder instance for method chaining. */ addFactSet(configure: (b: FactSetBuilder) => void): this; /** Adds a RichTextBlock element. @param configure A callback to configure the RichTextBlockBuilder. @returns The builder instance for method chaining. */ addRichTextBlock(configure: (b: RichTextBlockBuilder) => void): this; /** Adds an ActionSet element. @param configure A callback to configure the ActionSetBuilder. @returns The builder instance for method chaining. */ addActionSet(configure: (b: ActionSetBuilder) => void): this; /** Add a pre-built element directly. */ addElement(element: AdaptiveElement): this; /** Builds and returns the configured Container. @returns The configured Container instance. */ build(): Container; } //# sourceMappingURL=ContainerBuilder.d.ts.map