import { VersionedAlternateLayout, DisplayBreakpointVersionedAlternateLayoutMapping, VersionedLayout, VersionedLayoutDefinition, GuidValue, ICheckedoutVersionedData, IVersionedData, IVersionedDataIdentifier, IVersionInformation, IVersionReference, LatestReferenceResponse, VersionedLayoutId, AppScopedVersionedLayoutUrlValidationRequest, VersionedLayoutDataWithParentLayout } from "../models"; interface VersionedLayoutCreationResponse { checkedOutVersionedData: ICheckedoutVersionedData; versionedLayout: VersionedLayout; } interface VersionedAlternateLayoutCreationResponse { checkedOutVersionedData: ICheckedoutVersionedData; versionedLayout: VersionedLayout; versionedAlternateLayout: VersionedAlternateLayout; } interface LayoutPublishingResponse { versionedLayout: VersionedLayout; publishedVersionedData: IVersionedData; } export declare class VersionedLayoutService { private static readonly AppDefaultLayoutInPublicListingSettingsKeyPrefix; private httpClient; private settingsService; createAppScopedLayout: (appInstanceId: GuidValue, definition: VersionedLayoutDefinition, urlSegment: string, parentLayoutId?: VersionedLayoutId) => Promise; createBusinessProfileScopedLayout: (businessProfileId: GuidValue, definition: VersionedLayoutDefinition, urlSegment: string, parentLayoutId?: VersionedLayoutId) => Promise; createTenantScopedLayout: (definition: VersionedLayoutDefinition, urlSegment: string, parentLayoutId?: VersionedLayoutId) => Promise; createAlternateLayout: (versionedLayout: VersionedLayout, title: string, definition: VersionedLayoutDefinition) => Promise; deleteLayout: (layout: VersionedLayout) => Promise; updateLayout: (layout: VersionedLayout) => Promise; deleteAlternateLayout: (alternateLayout: VersionedAlternateLayout) => Promise; getLayoutDefinitionLatestRef: (dataIdentifier: IVersionedDataIdentifier) => Promise; getLayoutDefinitionVersion: (version: IVersionReference) => Promise>; getLayoutDefinitionVersionWithParentLayout: (version: IVersionReference, parentVersion: IVersionReference) => Promise; publishLayoutDefinition: (versionedData: IVersionedData) => Promise; updateLayoutDefinition: (versionedData: ICheckedoutVersionedData) => Promise>; checkInLayoutDefinition: (versionedData: ICheckedoutVersionedData) => Promise>; checkOutLayoutDefinition: (dataIdentifier: IVersionedDataIdentifier, takeOver?: boolean) => Promise>; discardLayoutDefinition: (versionedData: ICheckedoutVersionedData) => Promise>; getLayoutByIdentifier: (identifier: IVersionedDataIdentifier) => Promise; getLayoutById: (layoutId: number) => Promise; getLayoutsByAppId: (appInstanceId: GuidValue) => Promise; getLayoutsByProfileAndTypeId: (businessProfileId: GuidValue, layoutTypeId: GuidValue) => Promise; getLayoutsByTypeIds: (layoutTypeIds: GuidValue[]) => Promise; getTenantLayouts: () => Promise; getLayoutVersionInformation: (dataIdentifier: IVersionedDataIdentifier) => Promise; setDisplayBreakpointAlternateLayoutMapping: (versionedLayoutId: VersionedLayoutId, mapping: DisplayBreakpointVersionedAlternateLayoutMapping) => Promise; getDefaultAppLayoutInPublicListing: (appInstanceId: GuidValue) => Promise; setDefaultAppLayoutInPublicListing: (versionedLayoutId: VersionedLayoutId, appInstanceId: GuidValue) => Promise; getDisplayBreakpointAlternateLayoutMappings: (...versionedLayoutIds: VersionedLayoutId[]) => Promise<{ [versionedLayoutId: number]: DisplayBreakpointVersionedAlternateLayoutMapping; }>; updateAlternateLayout: (alternateLayout: VersionedAlternateLayout) => Promise; validateLayoutUrl: (request: AppScopedVersionedLayoutUrlValidationRequest) => Promise; } export {};