/** @packageDocumentation
 * @module ContentView
 */
import { ContentLayoutProps } from "@itwin/appui-abstract";
import { ContentGroup, ContentGroupProps } from "./ContentGroup";
import { ContentLayoutDef } from "./ContentLayout";
/** ContentLayout Manager class.
 * @public
 * @deprecated in 3.7. Use `UiFramework.content.layouts` property.
 */
export declare class ContentLayoutManager {
    /** build a layout key that is unique for group layout combination */
    static getLayoutKey(props: {
        contentGroupId: string;
        layoutId: string;
    }): string;
    /** Return a LayoutDef that is specific to a content group.
     * @returns the [[ContentLayoutDef]] if found, or undefined otherwise
     */
    static getLayoutForGroup(contentGroupProps: ContentGroupProps | ContentGroup, overrideContentLayout?: ContentLayoutProps): ContentLayoutDef;
    /** Finds a Content Layout with a given id.
     * @param layoutKey  group specific layout id, see `getLayoutKey`
     * @returns the [[ContentLayoutDef]] if found, or undefined otherwise
     */
    static findLayout(layoutKey: string): ContentLayoutDef | undefined;
    /** Adds a Content Layout.
     * @param layoutId  the id of the Content Layout to add
     * @param layoutDef  the Content Layout definition to add
     */
    static addLayout(layoutId: string, layoutDef: ContentLayoutDef): void;
    /** Gets the active Content Layout */
    static get activeLayout(): ContentLayoutDef | undefined;
    /** Gets the active Content Group */
    static get activeContentGroup(): ContentGroup | undefined;
    /** Sets the active Content Layout, Content Group and Content Control.
     * @param contentLayoutDef  Content layout to make active
     * @param contentGroup  Content Group to make active
     */
    static setActiveLayout(contentLayoutDef: ContentLayoutDef, contentGroup: ContentGroup): Promise<void>;
    /** Sets the active Content Group.
     * @param contentGroup  Content Group to make active
     */
    static setActiveContentGroup(contentGroup: ContentGroup): Promise<void>;
    /** Refreshes the active layout and content group.
     */
    static refreshActiveLayout(): void;
}
//# sourceMappingURL=ContentLayoutManager.d.ts.map