import { LayoutItemRegistration, BlockRegistration, Section, LayoutItem, Block, LoadedLayout, GuidValue, SectionItem, ColumnedSectionItemSettings, TabbedSectionItemSettings, SectionTypes, AccordionedSectionItemSettings, SteppedSectionItemSettings } from "../../../models";
/**
 * Factory for Layout items
 * */
export declare class EditorLayoutItemFactory {
    static createSection(layout: LoadedLayout, type: SectionTypes): Section;
    static createDelegatedSection(layout: LayoutItem): Section;
    static createColumn(layout: LoadedLayout): SectionItem<ColumnedSectionItemSettings>;
    static createTab(layout: LoadedLayout, languageTag?: string): SectionItem<TabbedSectionItemSettings>;
    static createAccordion(layout: LoadedLayout, languageTag?: string): SectionItem<AccordionedSectionItemSettings>;
    static createStep(layout: LoadedLayout, languageTag?: string): SectionItem<SteppedSectionItemSettings>;
    static createSectionWithColumns(layout: LoadedLayout, columns: number): Section;
    static createBlock(layout: LoadedLayout, manifestId: GuidValue, elementName?: string): Block;
    static createBlockFromRegistration(layout: LoadedLayout, registration: BlockRegistration): Block;
    static createFromRegistration(layout: LoadedLayout, itemRegistration: LayoutItemRegistration): Array<LayoutItem>;
    static createOneColumSectionArray(layout: LoadedLayout): Array<Section>;
    static createTwoColumSectionArray(layout: LoadedLayout): Array<Section>;
    static createThreeColumSectionArray(layout: LoadedLayout): Array<Section>;
    static createThreeColumPageSectionArray(layout: LoadedLayout): Array<Section>;
    static createThreeColumnHeroSectionArray(layout: LoadedLayout): Array<Section>;
    static createOneTabSectionArray(layout: LoadedLayout, languageTag?: string): Array<Section>;
    static createAccordionSectionArray(layout: LoadedLayout, languageTag?: string): Array<Section>;
    static createStepperSectionArray(layout: LoadedLayout, languageTag?: string): Array<Section>;
}
