UNPKG

@omnia/fx-models

Version:
71 lines (70 loc) 2.71 kB
import { DisplayBreakpointCodes } from "../Enums"; import { GuidValue } from "@omnia/fx-models/internal-do-not-import-from-here/shared/models"; import { Layout } from "../Layout"; import { MultilingualString } from "../MultilingualString"; import { DataToVersion, IVersionedData, IVersionedDataIdentifier, IVersionReference } from "../VersionedData"; export declare enum VersionedLayoutId { } export declare enum VersionedAlternateLayoutId { } export interface VersionedLayout { readonly id: VersionedLayoutId; title?: MultilingualString; readonly versionedDataIdentifier: IVersionedDataIdentifier; readonly publishedVersionReference: IVersionReference; readonly parentLayoutId?: VersionedLayoutId; readonly appInstanceId?: GuidValue; readonly layoutTypeId: GuidValue; urlSegment: string; readonly businessProfileId?: GuidValue; readonly alternateLayouts: VersionedAlternateLayout[]; readonly deletedAt?: string; } export interface VersionedAlternateLayout { readonly id: VersionedAlternateLayoutId; title: string; readonly versionedDataIdentifier: IVersionedDataIdentifier; readonly publishedVersionReference: IVersionReference; readonly versionedLayoutId: VersionedLayoutId; } export interface AppScopedVersionedLayoutUrlValidationRequest { appInstanceId: GuidValue; ignoreFromLayoutId?: VersionedLayoutId; urlSegment: string; } export interface DisplayBreakpointVersionedAlternateLayoutMapping { [DisplayBreakpointCodes.ExtraSmall]?: VersionedAlternateLayoutId; [DisplayBreakpointCodes.Small]?: VersionedAlternateLayoutId; [DisplayBreakpointCodes.Medium]?: VersionedAlternateLayoutId; } export declare class VersionedLayoutDefinition implements DataToVersion { constructor(layoutTypeId: GuidValue); readonly layoutTypeId: GuidValue; readonly omniaServiceId: GuidValue; readonly dataTypeId: GuidValue; title: MultilingualString; layout: Layout; } export declare class VersionedAlternateLayoutDefinition extends VersionedLayoutDefinition { constructor(); } export interface VersionedLayoutDataWithParentLayout { versionedData: IVersionedData<VersionedLayoutDefinition>; parentVersionedData: IVersionedData<VersionedLayoutDefinition>; mergedLayout: Layout; } export interface IVersionedLayoutProvider { versionedLayout: string; } export declare const VersionedLayoutProvider: IVersionedLayoutProvider; declare module "../Layout" { interface ILayoutDependencyProvider extends IVersionedLayoutProvider { } } declare module "../Layout" { interface IBlockInstance<TSettings = void> { versionedLayout?: { id: VersionedLayoutId; }; } }