liferay-headless-rest-client
Version:
A collection of Headless Clients used in Liferay Portal
1,902 lines • 157 kB
TypeScript
export type Facet = {
facetCriteria?: string;
facetValues?: Array<FacetValue>;
};
export type FacetValue = {
numberOfOccurrences?: number;
term?: string;
};
export type PagePermission = {
items?: Array<Permission>;
lastPage?: number;
totalCount?: number;
actions?: {
[key: string]: {
[key: string]: string;
};
};
page?: number;
facets?: Array<Facet>;
pageSize?: number;
};
export type Permission = {
actionIds?: Array<string>;
roleExternalReferenceCode?: string;
roleName?: string;
roleType?: string;
};
/**
* The utility page's creator. It is not returned by default. It can be embedded via nestedFields.
*/
export type Creator = {
/**
* The user's additional name, which can be used as a middle name.
*/
readonly additionalName?: string;
/**
* The type of the content.
*/
readonly contentType?: string;
/**
* The user's surname (last name).
*/
readonly familyName?: string;
/**
* The user's first name.
*/
readonly givenName?: string;
/**
* The user's ID.
*/
readonly id?: number;
/**
* A relative URL to the user's profile image.
*/
readonly image?: string;
/**
* The user's full name.
*/
readonly name?: string;
/**
* A relative URL to the user's profile.
*/
readonly profileURL?: string;
readonly 'x-class-name'?: string;
};
/**
* The display page template's parent folder.
*/
export type DisplayPageTemplateFolder = {
creator?: Creator;
/**
* The display page template folder's creator external reference code.
*/
creatorExternalReferenceCode?: string;
/**
* The display page template folder's creation date.
*/
dateCreated?: string;
/**
* The last time any field of the display page template folder was changed.
*/
dateModified?: string;
/**
* The display page template folder's description.
*/
description?: string;
/**
* The display page template folder's external reference code.
*/
externalReferenceCode?: string;
/**
* The display page template folder's key.
*/
key?: string;
/**
* The display page template folder's name.
*/
name?: string;
/**
* The parent display page template folder's external reference code.
*/
parentDisplayPageTemplateFolderExternalReferenceCode?: string;
/**
* A valid external identifier to reference this page template folder.
*/
uuid?: string;
readonly 'x-class-name'?: string;
};
export type PageDisplayPageTemplateFolder = {
items?: Array<DisplayPageTemplateFolder>;
lastPage?: number;
totalCount?: number;
actions?: {
[key: string]: {
[key: string]: string;
};
};
page?: number;
facets?: Array<Facet>;
pageSize?: number;
};
/**
* A reference specifying the class name.
*/
export type ClassNameReference = CollectionReference & {
collectionType?: 'ClassNameReference';
} & {
readonly 'x-class-name'?: string;
className: string;
};
/**
* A reference specifying the class name and an optional subtype.
*/
export type ClassSubtypeReference = {
className: string;
subTypeExternalReference?: ItemExternalReference;
readonly 'x-class-name'?: string;
};
/**
* The client extension for the theme spritemap of a page specification.
*/
export type ClientExtension = {
/**
* The configuration keys and values of the client extension.
*/
clientExtensionConfig?: {
[key: string]: string;
};
/**
* The client extension's external reference code.
*/
externalReferenceCode?: string;
readonly 'x-class-name'?: string;
};
export type CollectionItemExternalReference = CollectionReference & {
collectionType?: 'CollectionItemExternalReference';
} & {
readonly 'x-class-name'?: string;
className?: string;
externalReferenceCode?: string;
scope?: Scope;
};
export type CollectionItemPageElementDefinition = PageElementDefinition & {
type?: 'CollectionItemPageElementDefinition';
} & {
readonly 'x-class-name'?: string;
/**
* The collection item page element's configuration.
*/
collectionItemConfig?: {
[key: string]: unknown;
};
};
export type CollectionPageElementDefinition = PageElementDefinition & {
type?: 'CollectionPageElementDefinition';
} & {
readonly 'x-class-name'?: string;
collectionReference?: CollectionReference;
/**
* A list of viewports of the collection page element.
*/
collectionViewports?: Array<CollectionViewport>;
/**
* Whether to show all items when pagination is disabled.
*/
displayAllItems?: boolean;
/**
* Whether to show all pages when pagination is enabled.
*/
displayAllPages?: boolean;
emptyCollectionConfig?: EmptyCollectionConfig;
fragmentStyle?: FragmentStyle;
/**
* The fragment viewports of the collection page element.
*/
fragmentViewports?: Array<FragmentViewport>;
layout?: Layout;
/**
* The style of a list of items in the collection page element.
*/
listItemStyle?: string;
/**
* The style of a list in the collection page element.
*/
listStyle?: string;
/**
* The custom name of a collection page element.
*/
name?: string;
/**
* The number of columns in the collection page element.
*/
numberOfColumns?: number;
/**
* The maximum number of items to display in the collection page element when pagination is disabled.
*/
numberOfItems?: number;
/**
* The number of items per page in the collection page element.
*/
numberOfItemsPerPage?: number;
/**
* The maximum number of pages to show when pagination is enabled.
*/
numberOfPages?: number;
/**
* The collection page element's template key.
*/
templateKey?: string;
/**
* The type of pagination.
*/
paginationType?: 'None' | 'Numeric' | 'Regular' | 'Simple';
};
export type CollectionReference = {
readonly 'x-class-name'?: string;
/**
* The collection's type (Collection, CollectionProvider).
*/
collectionType?: 'Collection' | 'CollectionProvider';
};
/**
* A collection viewport.
*/
export type CollectionViewport = {
collectionViewportDefinition: CollectionViewportDefinition;
/**
* The collection viewport's ID.
*/
id: string;
readonly 'x-class-name'?: string;
};
/**
* The definition of the collection viewport.
*/
export type CollectionViewportDefinition = {
/**
* The number of columns of the collection viewport.
*/
numberOfColumns?: number;
readonly 'x-class-name'?: string;
};
export type ColumnPageElementDefinition = PageElementDefinition & {
type?: 'ColumnPageElementDefinition';
} & {
readonly 'x-class-name'?: string;
/**
* A list of column viewports of the column page element.
*/
columnViewports?: Array<ColumnViewport>;
/**
* The page column's size.
*/
size?: number;
};
/**
* A column in a viewport.
*/
export type ColumnViewport = {
columnViewportDefinition: ColumnViewportDefinition;
id: string;
readonly 'x-class-name'?: string;
};
export type ColumnViewportDefinition = {
size?: number;
readonly 'x-class-name'?: string;
};
/**
* Represents the Adaptive Media fragment image configuration for different viewports.
*/
export type Config = {
/**
* The landscape mobile configuration of the fragment image.
*/
landscapeMobile?: string;
/**
* The portrait mobile configuration of the fragment image.
*/
portraitMobile?: string;
/**
* The tablet configuration of the fragment image.
*/
tablet?: string;
readonly 'x-class-name'?: string;
};
export type ContainerPageElementDefinition = PageElementDefinition & {
type?: 'ContainerPageElementDefinition';
} & {
readonly 'x-class-name'?: string;
backgroundFragmentImage?: FragmentImage;
/**
* The content visibility of the container.
*/
contentVisibility?: string;
/**
* A list of CSS Classes that are applied to the element.
*/
cssClasses?: Array<string>;
/**
* Custom CSS that is applied on the container page element.
*/
customCSS?: string;
/**
* The custom CSS viewports of the container page element.
*/
customCSSViewports?: Array<CustomCssViewport>;
fragmentLink?: FragmentLink;
fragmentStyle?: FragmentStyle;
/**
* A list of fragment viewports of the container page element.
*/
fragmentViewports?: Array<FragmentViewport>;
htmlProperties?: HtmlProperties;
/**
* A flag that indicates whether the container page element is indexed or not.
*/
indexed?: boolean;
layout?: Layout;
/**
* The custom name of a container page element.
*/
name?: string;
};
export type ContentPageSpecification = PageSpecification & {
type?: 'ContentPageSpecification';
} & {
readonly 'x-class-name'?: string;
/**
* The draft content page specification external reference code or null if it is a draft content page specification.
*/
draftContentPageSpecificationExternalReferenceCode?: string;
pageExperiences?: Array<PageExperience>;
};
/**
* A custom CSS viewport.
*/
export type CustomCssViewport = {
/**
* The definition of the custom CSS viewport.
*/
customCSS: string;
/**
* The custom CSS viewport's ID.
*/
id: string;
readonly 'x-class-name'?: string;
};
export type DisplayPageTemplate = {
contentTypeReference?: ClassSubtypeReference;
creator?: Creator;
/**
* The display page template's creator external reference code.
*/
creatorExternalReferenceCode?: string;
/**
* The display page template's creation date.
*/
dateCreated?: string;
/**
* The last time any field of the display page template was changed.
*/
dateModified?: string;
/**
* The display page template's most recent publication date.
*/
datePublished?: string;
displayPageTemplateSettings?: DisplayPageTemplateSettings;
/**
* The display page template's external reference code.
*/
externalReferenceCode?: string;
friendlyUrlHistory?: FriendlyUrlHistory;
/**
* The localized relative URLs to the display page template's rendered content.
*/
friendlyUrlPath_i18n?: {
[key: string]: string;
};
/**
* The display page template's key.
*/
key?: string;
/**
* Whether the display page template is the default one for the given content type/subtype.
*/
markedAsDefault?: boolean;
/**
* The display page template's name.
*/
name?: string;
/**
* The display page template's specifications. A display page template will contain 1 page specifications for its draft layout and 1 page specifications for its published layout. This field is not returned by default. It can be requested via nestedFields.
*/
pageSpecifications?: Array<PageSpecification>;
parentFolder?: DisplayPageTemplateFolder;
thumbnail?: ItemExternalReference;
/**
* A valid external identifier to reference this display page template.
*/
uuid?: string;
readonly 'x-class-name'?: string;
};
/**
* The display page template's Open Graph settings.
*/
export type DisplayPageTemplateOpenGraphSettings = {
/**
* The Open Graph's description template.
*/
descriptionTemplate?: string;
/**
* The Open Graph's image alt template.
*/
imageAltTemplate?: string;
/**
* The Open Graph's image template.
*/
imageTemplate?: string;
/**
* The Open Graph's title template.
*/
titleTemplate?: string;
readonly 'x-class-name'?: string;
};
/**
* The display page template's SEO settings.
*/
export type DisplayPageTemplateSeoSettings = {
/**
* The description template of the display page template to be used as summary for search engines.
*/
descriptionTemplate?: string;
/**
* The main title template of the display page template to be used by search engines.
*/
htmlTitleTemplate?: string;
/**
* A localized tag telling search engines if and how they should crawl the display page template.
*/
robots_i18n?: {
[key: string]: string;
};
sitemapSettings?: SitemapSettings;
readonly 'x-class-name'?: string;
};
/**
* Settings of the display page template, such as SEO or OpenGraph.
*/
export type DisplayPageTemplateSettings = {
openGraphSettings?: DisplayPageTemplateOpenGraphSettings;
seoSettings?: DisplayPageTemplateSeoSettings;
readonly 'x-class-name'?: string;
};
export type DropZonePageElementDefinition = PageElementDefinition & {
type?: 'DropZonePageElementDefinition';
} & {
readonly 'x-class-name'?: string;
/**
* The drop zone page element's allowed or unallowed fragments.
*/
fragmentSettings?: {
[key: string]: unknown;
};
};
export type EmptyCollectionConfig = {
/**
* Whether to display a message when the collection is empty or no results match the applied filters (true by default).
*/
displayMessage?: boolean;
/**
* The localized message to display when the collection is empty or no results match the applied filters ('No Results Found' by default).
*/
message_i18n?: {
[key: string]: string;
};
readonly 'x-class-name'?: string;
};
export type FormConfig = {
/**
* The form reference.
*/
formReference?: {
[key: string]: unknown;
};
/**
* The form page element's number of steps.
*/
numberOfSteps?: number;
/**
* The definition of the result when a form submission is successful.
*/
successFormSubmissionResult?: {
[key: string]: unknown;
};
readonly 'x-class-name'?: string;
formType?: 'Multistep' | 'Simple';
};
export type FormPageElementDefinition = PageElementDefinition & {
type?: 'FormPageElementDefinition';
} & {
readonly 'x-class-name'?: string;
/**
* A list of CSS classes that are applied to the form page element.
*/
cssClasses?: Array<string>;
/**
* Custom CSS that is applied on the form page element.
*/
customCSS?: string;
/**
* The custom CSS viewports of the page form.
*/
customCSSViewports?: Array<CustomCssViewport>;
formConfig?: FormConfig;
fragmentStyle?: FragmentStyle;
/**
* A list of fragment viewports of a form page element.
*/
fragmentViewports?: Array<FragmentViewport>;
/**
* A flag that indicates whether the page fragment instance is indexed or not.
*/
indexed?: boolean;
layout?: Layout;
/**
* The custom name of a form page element.
*/
name?: string;
};
export type FormStepContainerPageElementDefinition = PageElementDefinition & {
type?: 'FormStepContainerPageElementDefinition';
} & {
readonly 'x-class-name'?: string;
/**
* A list of CSS classes that are applied to the form step container page element.
*/
cssClasses?: Array<string>;
/**
* Custom CSS that is applied on the form step container page element.
*/
customCSS?: string;
/**
* The custom CSS viewports of the form step container page element.
*/
customCSSViewports?: Array<CustomCssViewport>;
fragmentStyle?: FragmentStyle;
/**
* A list of fragment viewports of a form step container page element.
*/
fragmentViewports?: Array<FragmentViewport>;
layout?: Layout;
/**
* The custom name of a form step container page element.
*/
name?: string;
};
export type FormStepPageElementDefinition = PageElementDefinition & {
type?: 'FormStepPageElementDefinition';
} & {
readonly 'x-class-name'?: string;
/**
* The form step's configuration.
*/
formStepConfig?: {
[key: string]: unknown;
};
};
export type FragmentCompositionInstancePageElementDefinition = PageElementDefinition & {
type?: 'FragmentCompositionInstancePageElementDefinition';
} & {
readonly 'x-class-name'?: string;
fragmentComposition?: ItemExternalReference;
};
export type FragmentDropZonePageElementDefinition = PageElementDefinition & {
type?: 'FragmentDropZonePageElementDefinition';
} & {
readonly 'x-class-name'?: string;
/**
* The id of the fragment drop zone
*/
fragmentDropZoneId?: string;
};
/**
* The fragment field values of the the fragment instance.
*/
export type FragmentField = {
/**
* The fragment field's ID.
*/
id?: string;
/**
* The fragment field's value.
*/
value?: {
[key: string]: unknown;
};
readonly 'x-class-name'?: string;
};
/**
* The background fragment image of the container page element.
*/
export type FragmentImage = {
config?: Config;
/**
* The fragment image's description.
*/
description?: {
[key: string]: unknown;
};
itemExternalReference?: ItemExternalReference;
/**
* The fragment image's title.
*/
title?: {
[key: string]: unknown;
};
/**
* The fragment image's url. Can be inline or mapped to an external value.
*/
url?: {
[key: string]: unknown;
};
readonly 'x-class-name'?: string;
};
export type FragmentInstancePageElementDefinition = PageElementDefinition & {
type?: 'FragmentInstancePageElementDefinition';
} & {
readonly 'x-class-name'?: string;
/**
* A list of CSS classes that are applied to the fragment instance.
*/
cssClasses?: Array<string>;
/**
* Custom CSS that is applied on the fragment instance.
*/
customCSS?: string;
/**
* The custom CSS viewports of the fragment instance.
*/
customCSSViewports?: Array<CustomCssViewport>;
/**
* The fragment instance's most recent propagation date.
*/
datePropagated?: string;
/**
* The fragment instance's most recent publication date.
*/
datePublished?: string;
/**
* The external reference code of the corresponding page element in the draft of the page. Available only in the published page specification.
*/
draftPageElementExternalReferenceCode?: string;
/**
* The configuration values of the fragment instance.
*/
fragmentConfig?: {
[key: string]: {
[key: string]: unknown;
};
};
/**
* The fragment field values of the the fragment instance.
*/
fragmentFields?: Array<FragmentField>;
/**
* An external reference to the fragment.
*/
fragmentReference?: {
[key: string]: unknown;
};
fragmentStyle?: FragmentStyle;
/**
* A list of fragment viewports of the fragment instance page element.
*/
fragmentViewports?: Array<FragmentViewport>;
/**
* A flag that indicates whether the fragment instance page element is indexed or not.
*/
indexed?: boolean;
/**
* The custom name of a fragment instance page element.
*/
name?: string;
/**
* The fragment instance page element's namespace.
*/
namespace?: string;
/**
* A valid external identifier to reference this fragment instance page element.
*/
uuid?: string;
/**
* A list of widget instances within the fragment instance page element.
*/
widgetInstances?: Array<WidgetInstance>;
};
/**
* The fragment link of the container page element.
*/
export type FragmentLink = {
/**
* The localized fragment link's values.
*/
value_i18n?: {
[key: string]: FragmentLinkValue;
};
readonly 'x-class-name'?: string;
};
/**
* The localized fragment link's values.
*/
export type FragmentLinkValue = {
/**
* The fragment link value's hypertext reference. Can be an inline value or mapped to an external value.
*/
href?: {
[key: string]: unknown;
};
readonly 'x-class-name'?: string;
/**
* The fragment link value's target (blank, parent, self, top).
*/
target?: 'Blank' | 'Parent' | 'Self' | 'Top';
};
/**
* The fragment style of the widget instance page element.
*/
export type FragmentStyle = {
/**
* The fragment's background color.
*/
backgroundColor?: string;
backgroundFragmentImage?: FragmentImage;
/**
* The fragment's border color.
*/
borderColor?: string;
/**
* The fragment's background radius.
*/
borderRadius?: string;
/**
* The fragment's border width.
*/
borderWidth?: string;
/**
* The fragment's font family.
*/
fontFamily?: string;
/**
* The fragment's font size.
*/
fontSize?: string;
/**
* The fragment's font weight.
*/
fontWeight?: string;
/**
* The fragment's height.
*/
height?: string;
/**
* Specifies if the fragment is hidden to the user.
*/
hidden?: boolean;
/**
* The fragment's margin bottom.
*/
marginBottom?: string;
/**
* The fragment's margin left.
*/
marginLeft?: string;
/**
* The fragment's margin right.
*/
marginRight?: string;
/**
* The fragment's margin top.
*/
marginTop?: string;
/**
* The fragment's max height.
*/
maxHeight?: string;
/**
* The fragment's max width.
*/
maxWidth?: string;
/**
* The fragment's min height.
*/
minHeight?: string;
/**
* The fragment's min width.
*/
minWidth?: string;
/**
* The fragment's opacity.
*/
opacity?: string;
/**
* The fragment's overflow behavior.
*/
overflow?: string;
/**
* The fragment's padding bottom.
*/
paddingBottom?: string;
/**
* The fragment's padding left.
*/
paddingLeft?: string;
/**
* The fragment's padding right.
*/
paddingRight?: string;
/**
* The fragment's padding top.
*/
paddingTop?: string;
/**
* The fragment's shadow effect.
*/
shadow?: string;
/**
* The fragment's text align.
*/
textAlign?: string;
/**
* The fragment's text color.
*/
textColor?: string;
/**
* The fragment's width.
*/
width?: string;
readonly 'x-class-name'?: string;
};
/**
* A fragment viewport.
*/
export type FragmentViewport = {
fragmentViewportStyle: FragmentViewportStyle;
/**
* The fragment viewport's ID.
*/
id: string;
readonly 'x-class-name'?: string;
};
/**
* The fragment's viewport style.
*/
export type FragmentViewportStyle = {
/**
* The fragment viewport's background color.
*/
backgroundColor?: string;
/**
* The fragment viewport's border color.
*/
borderColor?: string;
/**
* The fragment viewport's background radius.
*/
borderRadius?: string;
/**
* The fragment viewport's border width.
*/
borderWidth?: string;
/**
* The fragment viewport's font family.
*/
fontFamily?: string;
/**
* The fragment viewport's font size.
*/
fontSize?: string;
/**
* The fragment viewport's font weight.
*/
fontWeight?: string;
/**
* The fragment viewport's height.
*/
height?: string;
/**
* Specifies if the fragment's viewport is hidden to the user.
*/
hidden?: boolean;
/**
* The fragment viewport's margin bottom.
*/
marginBottom?: string;
/**
* The fragment viewport's margin left.
*/
marginLeft?: string;
/**
* The fragment viewport's margin right.
*/
marginRight?: string;
/**
* The fragment viewport's margin top.
*/
marginTop?: string;
/**
* The fragment viewport's max height.
*/
maxHeight?: string;
/**
* The fragment viewport's max width.
*/
maxWidth?: string;
/**
* The fragment viewport's min height.
*/
minHeight?: string;
/**
* The fragment viewport's min width.
*/
minWidth?: string;
/**
* The fragment viewport's opacity.
*/
opacity?: string;
/**
* The fragment viewport's overflow behavior.
*/
overflow?: string;
/**
* The fragment viewport's padding bottom.
*/
paddingBottom?: string;
/**
* The fragment viewport's padding left.
*/
paddingLeft?: string;
/**
* The fragment viewport's padding right.
*/
paddingRight?: string;
/**
* The fragment viewport's padding top.
*/
paddingTop?: string;
/**
* The fragment viewport's shadow effect.
*/
shadow?: string;
/**
* The fragment viewport's text align.
*/
textAlign?: string;
/**
* The fragment viewport's text color.
*/
textColor?: string;
/**
* The fragment viewport's width.
*/
width?: string;
readonly 'x-class-name'?: string;
};
/**
* The history of previously used URLs to the utility page's rendered content. This field is not returned by default. It can be requested via nestedFields.
*/
export type FriendlyUrlHistory = {
/**
* The old localized relative URLs to the page's rendered content.
*/
friendlyUrlPath_i18n?: {
[key: string]: unknown;
};
readonly 'x-class-name'?: string;
};
export type HtmlProperties = {
readonly 'x-class-name'?: string;
htmlTag?: 'Article' | 'Aside' | 'Div' | 'Footer' | 'Header' | 'Nav' | 'Section';
};
/**
* A unique reference to an entity which remains constant across environments.
*/
export type ItemExternalReference = {
className?: string;
externalReferenceCode: string;
scope?: Scope;
readonly 'x-class-name'?: string;
};
/**
* The form step container page element's layout.
*/
export type Layout = {
readonly 'x-class-name'?: string;
/**
* The container's type (fixed or fluid).
*/
containerType?: 'Fixed' | 'Fluid';
flexWrap?: 'NoWrap' | 'Wrap' | 'WrapReverse';
/**
* The width's type (fixed or fluid).
*/
widthType?: 'Fixed' | 'Fluid';
};
/**
* The page elements in the experience.
*/
export type PageElement = {
/**
* The page element's external reference code. Unique within the site.
*/
externalReferenceCode?: string;
pageElementDefinition?: PageElementDefinition;
/**
* A list of the page elements this page element has.
*/
pageElements?: Array<PageElement>;
/**
* The parent's page element's external reference code. Unique within the site.
*/
parentExternalReferenceCode?: string;
/**
* The 0-based position this page element occupies with respect to its siblings (0 for first child, 1 for second child, ...). If not specified when creating a page element the page element will be added at the last valid position.
*/
position?: number;
readonly 'x-class-name'?: string;
};
/**
* The page element's definition.
*/
export type PageElementDefinition = {
readonly 'x-class-name'?: string;
/**
* The page element definition's type (collection, collection item, column, container, drop zone, form, form step, form step container, fragment, fragment composition, fragment drop zone, row or widget).
*/
type?: 'Collection' | 'CollectionItem' | 'Column' | 'Container' | 'DropZone' | 'Form' | 'FormStep' | 'FormStepContainer' | 'Fragment' | 'FragmentComposition' | 'FragmentDropZone' | 'Row' | 'Widget';
};
export type PageExperience = {
/**
* The experience's external reference code, unique per site.
*/
externalReferenceCode?: string;
/**
* The experience's key.
*/
key?: string;
/**
* The localized experience's names.
*/
name_i18n?: {
[key: string]: string;
};
/**
* The page elements in the experience.
*/
pageElements?: Array<PageElement>;
/**
* The page rules in the experience.
*/
pageRules?: Array<PageRule>;
/**
* The page specification's external reference code.
*/
pageSpecificationExternalReferenceCode?: string;
/**
* the experience's priority. It must be a unique value within the page specification. The default experience will always be assigned priority 0. A priority higher than 0 will result in an experience being active and a priority lower than 0 will result in an experience being inactive.
*/
priority?: number;
/**
* The segment's external reference code.
*/
segmentExternalReferenceCode?: string;
readonly 'x-class-name'?: string;
};
/**
* The page rules in the experience.
*/
export type PageRule = {
/**
* The page rule external reference code.
*/
externalReferenceCode?: string;
/**
* The custom name of a page rule.
*/
name?: string;
/**
* A list of actions of a page rule.
*/
pageRuleActions?: Array<PageRuleAction>;
/**
* A list of conditions of a page rule.
*/
pageRuleConditions?: Array<PageRuleCondition>;
readonly 'x-class-name'?: string;
/**
* The custom name of a Page rule.
*/
conditionType?: 'All' | 'Any';
};
/**
* A list of actions of a page rule.
*/
export type PageRuleAction = {
/**
* The page rule action's action.
*/
action?: string;
/**
* The page rule action's external reference code.
*/
externalReferenceCode?: string;
/**
* The page rule action's item ID.
*/
itemId?: string;
/**
* The page rule action's type.
*/
type?: string;
readonly 'x-class-name'?: string;
};
/**
* A list of conditions of a page rule.
*/
export type PageRuleCondition = {
/**
* The page rule condition's description.
*/
condition?: string;
/**
* The page rule condition's external reference code.
*/
externalReferenceCode?: string;
/**
* The page rule condition's type.
*/
type?: string;
/**
* The page rule condition's value.
*/
value?: string;
readonly 'x-class-name'?: string;
};
/**
* The utility page's specifications. A utility page will contain 1 page specifications for its draft layout and 1 page specifications for its published layout. This field is not returned by default. It can be requested via nestedFields.
*/
export type PageSpecification = {
/**
* The page specification's external reference code, unique per site.
*/
externalReferenceCode?: string;
settings?: Settings;
/**
* The site template page specification's external reference code.
*/
siteTemplatePageSpecificationExternalReferenceCode?: string;
readonly 'x-class-name'?: string;
/**
* The status of the page specification.
*/
status?: 'Approved' | 'Draft';
/**
* The type of the page specification.
*/
type?: 'ContentPageSpecification' | 'WidgetPageSpecification';
};
export type RowPageElementDefinition = PageElementDefinition & {
type?: 'RowPageElementDefinition';
} & {
readonly 'x-class-name'?: string;
/**
* A list of CSS classes that are applied to the row page element.
*/
cssClasses?: Array<string>;
/**
* Custom CSS that is applied on the row page element.
*/
customCSS?: string;
/**
* The custom CSS viewports of the row page element.
*/
customCSSViewports?: Array<CustomCssViewport>;
fragmentStyle?: FragmentStyle;
/**
* A list of fragment viewports of a row page element.
*/
fragmentViewports?: Array<FragmentViewport>;
/**
* A flag that indicates whether the row page element has gutters.
*/
gutters?: boolean;
/**
* A flag that indicates whether the row page element is indexed or not.
*/
indexed?: boolean;
/**
* The row page element's modules per row.
*/
modulesPerRow?: number;
/**
* The custom name of a row page element.
*/
name?: string;
/**
* The row page element's number of columns.
*/
numberOfColumns?: number;
/**
* A flag that indicates whether the row page element has reverse order.
*/
reverseOrder?: boolean;
/**
* A list of viewports of the row page element.
*/
rowViewports?: Array<RowViewport>;
/**
* The vertical alignment property of the row page element.
*/
verticalAlignment?: string;
};
/**
* A row viewport.
*/
export type RowViewport = {
/**
* The row viewport's ID.
*/
id: string;
rowViewportDefinition: RowViewportDefinition;
readonly 'x-class-name'?: string;
};
/**
* The definition of the row viewport.
*/
export type RowViewportDefinition = {
/**
* The number of modules per row.
*/
modulesPerRow?: number;
/**
* A flag that indicates whether the row viewport has reverse order.
*/
reverseOrder?: boolean;
/**
* The vertical alignment property of the row viewport.
*/
verticalAlignment?: string;
readonly 'x-class-name'?: string;
};
export type Scope = {
externalReferenceCode: string;
readonly 'x-class-name'?: string;
type: 'AssetLibrary' | 'Site';
};
export type Settings = {
/**
* The page specification's color scheme name.
*/
colorSchemeName?: string;
/**
* The page specification's CSS.
*/
css?: string;
/**
* The FavIcon of the page specification.
*/
favIcon?: {
[key: string]: unknown;
};
/**
* The client extensions for global CSS associated to the page.
*/
globalCSSClientExtensions?: Array<ClientExtension>;
/**
* The client extensions for global JS associated to the page.
*/
globalJSClientExtensions?: Array<ClientExtension>;
/**
* The page specification's JavaScript.
*/
javascript?: string;
masterPageItemExternalReference?: ItemExternalReference;
styleBookItemExternalReference?: ItemExternalReference;
themeCSSClientExtension?: ClientExtension;
/**
* The page specification's theme name.
*/
themeName?: string;
/**
* The page specification's theme settings.
*/
themeSettings?: {
[key: string]: string;
};
themeSpritemapClientExtension?: ClientExtension;
readonly 'x-class-name'?: string;
};
/**
* Represents settings related with the site map.
*/
export type SitemapSettings = {
/**
* Whether search engines should crawl and index the page.
*/
include?: boolean;
/**
* Whether search engines should crawl and index the child pages.
*/
includeChildSitePages?: boolean;
/**
* How the page should be prioritized relative to other pages.
*/
pagePriority?: number;
readonly 'x-class-name'?: string;
/**
* Indicates how often a page is updated.
*/
changeFrequency?: 'Always' | 'Hourly' | 'Daily' | 'Weekly' | 'Monthly' | 'Yearly' | 'Never';
};
/**
* The widget instance.
*/
export type WidgetInstance = {
/**
* The configuration keys and values of the widget instance.
*/
widgetConfig?: {
[key: string]: {
[key: string]: unknown;
};
};
/**
* The widget instance's ID.
*/
widgetInstanceId?: string;
/**
* The widget instance's name.
*/
widgetName?: string;
/**
* The widget instance's permissions.
*/
widgetPermissions?: Array<WidgetPermission>;
readonly 'x-class-name'?: string;
};
export type WidgetInstancePageElementDefinition = PageElementDefinition & {
type?: 'WidgetInstancePageElementDefinition';
} & {
readonly 'x-class-name'?: string;
/**
* A list of CSS classes that are applied to the widget instance page element.
*/
cssClasses?: Array<string>;
/**
* Custom CSS that is applied on the widget instance page element.
*/
customCSS?: string;
/**
* The custom CSS viewports of the widget instance page element.
*/
customCSSViewports?: Array<CustomCssViewport>;
fragmentStyle?: FragmentStyle;
/**
* A list of fragment viewports of the widget instance page element.
*/
fragmentViewports?: Array<FragmentViewport>;
/**
* The custom name of a widget instance page element.
*/
name?: string;
widgetInstance?: WidgetInstance;
};
/**
* The widget instance's look and feel configuration.
*/
export type WidgetLookAndFeelConfig = {
advancedStylingConfig?: {
[key: string]: unknown;
};
backgroundStylesConfig?: {
[key: string]: unknown;
};
borderStylesConfig?: {
[key: string]: unknown;
};
generalConfig?: {
[key: string]: unknown;
};
marginAndPaddingConfig?: {
[key: string]: unknown;
};
textStylesConfig?: {
[key: string]: unknown;
};
readonly 'x-class-name'?: string;
};
/**
* The sections of a widget page.
*/
export type WidgetPageSection = {
/**
* A flag that indicates whether the widget page section is customizable or not.
*/
customizable?: boolean;
/**
* The widget page section's id.
*/
id?: string;
/**
* A list of the widget instances within this page section.
*/
widgetPageWidgetInstances?: Array<WidgetPageWidgetInstance>;
readonly 'x-class-name'?: string;
};
export type WidgetPageSpecification = PageSpecification & {
type?: 'WidgetPageSpecification';
} & {
readonly 'x-class-name'?: string;
/**
* The sections of a widget page.
*/
widgetPageSections?: Array<WidgetPageSection>;
};
export type WidgetPageWidgetInstance = {
/**
* The external reference code of the widget instance.
*/
externalReferenceCode?: string;
/**
* The section's ID of the widget page or the nested application widget instance this widget belongs to.
*/
parentSectionId?: string;
/**
* The external reference code of the parent widget instance. Only available if this widget instance is within a nested applications widget instance.
*/
parentWidgetInstanceExternalReferenceCode?: string;
/**
* The 0-based position this widget instance occupies with respect to its siblings (0 for first child, 1 for second child, ...). If not specified when creating a widget instance the widget instance will be added at the last valid position.
*/
position?: number;
/**
* The configuration keys and values of the widget instance.
*/
widgetConfig?: {
[key: string]: {
[key: string]: unknown;
};
};
/**
* The widget instance's ID.
*/
widgetInstanceId?: string;
/**
* The widget instance's look and feel configuration.
*/
widgetLookAndFeelConfig?: Array<WidgetLookAndFeelConfig>;
/**
* The widget instance's name.
*/
widgetName?: string;
/**
* The widget instance's permissions.
*/
widgetPermissions?: Array<WidgetPermission>;
readonly 'x-class-name'?: string;
};
/**
* The widget instance's permissions.
*/
export type WidgetPermission = {
/**
* The IDs of the actions the role has permission for.
*/
actionIds?: Array<string>;
/**
* The role's name.
*/
roleName?: string;
readonly 'x-class-name'?: string;
};
export type PageDisplayPageTemplate = {
items?: Array<DisplayPageTemplate>;
lastPage?: number;
totalCount?: number;
actions?: {
[key: string]: {
[key: string]: string;
};
};
page?: number;
facets?: Array<Facet>;
pageSize?: number;
};
export type FragmentComposition = {
creator?: Creator;
/**
* The page's creator external reference code.
*/
creatorExternalReferenceCode?: string;
/**
* The structured content's creation date.
*/
dateCreated?: string;
/**
* The last time any field of the structured content was changed.
*/
dateModified?: string;
/**
* The structured content's most recent publication date.
*/
datePublished?: string;
/**
* The description of this fragment composition.
*/
description?: string;
/**
* The external reference code of this fragment composition.
*/
externalReferenceCode?: string;
/**
* The external reference code of the fragment set this fragment composition belongs to.
*/
fragmentSetExternalReferenceCode?: string;
/**
* The fragment composition's key.
*/
key?: string;
/**
* The fragment composition's name.
*/
name?: string;
pageElement?: PageElement;
thumbnail?: ItemExternalReference;
readonly 'x-class-name'?: string;
};
export type PageFragmentComposition = {
items?: Array<FragmentComposition>;
lastPage?: number;
totalCount?: number;
actions?: {
[key: string]: {
[key: string]: string;
};
};
page?: number;
facets?: Array<Facet>;
pageSize?: number;
};
export type MasterPage = {
creator?: Creator;
/**
* The page's creator external reference code.
*/
creatorExternalReferenceCode?: string;
/**
* The master page's creation date.
*/
dateCreated?: string;
/**
* The last time any field of the master page was changed.
*/
dateModified?: string;
/**
* The master page's most recent publication date.
*/
datePublished?: string;
/**
* The master page's external reference code, unique per site.
*/
externalReferenceCode?: string;
/**
* The master page's key.
*/
key?: string;
/**
* A list of keywords describing the master page.
*/
keywords?: Array<string>;
/**
* Whether the master page is the default one.
*/
markedAsDefault?: boolean;
/**
* The master page's name.
*/
name?: string;
/**
* The master page's specifications. A master page will contain 1 page specifications for its draft layout and 1 page specifications for its published layout. This field is not returned by default. It can be requested via nestedFields.
*/
pageSpecifications?: Array<PageSpecification>;
/**
* The external references to the associated categories.
*/
taxonomyCategoryItemExternalReferences?: Array<ItemExternalReference>;
thumbnail?: ItemExternalReference;
/**
* A valid external identifier to reference this page.
*/
uuid?: string;
readonly 'x-class-name'?: string;
};
export type PageMasterPage = {
items?: Array<MasterPage>;
lastPage?: number;
totalCount?: number;
actions?: {
[key: string]: {
[key: string]: string;
};
};
page?: number;
facets?: Array<Facet>;
pageSize?: number;
};
export type PagePageElement = {
items?: Array<PageElement>;
lastPage?: number;
totalCount?: number;
actions?: {
[key: string]: {
[key: string]: string;
};
};
page?: number;
facets?: Array<Facet>;
pageSize?: number;
};
export type PagePageExperience = {
items?: Array<PageExperience>;
lastPage?: number;
totalCount?: number;
actions?: {
[key: string]: {
[key: string]: string;
};
};
page?: number;
facets?: Array<Facet>;
pageSize?: number;
};
export type PagePageRuleAction = {
items?: Array<PageRuleAction>;
lastPage?: number;
totalCount?: number;
actions?: {
[key: string]: {
[key: string]: string;
};
};
page?: number;
facets?: Array<Facet>;
pageSize?: number;
};
export type PagePageRuleCondition = {
items?: Array<PageRuleCondition>;
lastPage?: number;
totalCount?: number;
actions?: {
[key: string]: {
[key: string]: string;
};
};
page?: number;
facets?: Array<Facet>;
pageSize?: number;
};
export type PagePageRule = {
items?: Array<PageRule>;
lastPage?: number;
totalCount?: number;
actions?: {
[key: string]: {
[key: string]: string;
};
};
page?: number;
facets?: Array<Facet>;
pageSize?: number;
};
export type PagePageSpecification = {
items?: Array<PageSpecification>;
lastPage?: number;
totalCount?: number;
actions?: {
[key: string]: {
[key: string]: string;
};
};
page?: number;
facets?: Array<Facet>;
pageSize?: number;
};
export type ContentPageTemplate = PageTemplate & {
type?: 'ContentPageTemplate';
} & {
readonly 'x-class-name'?: string;
};
export type ContentPageTemplateSettings = PageTemplateSettings & {
type?: 'ContentPageTemplateSettings';
} & {
readonly 'x-class-name'?: string;
};
/**
* The page's site navigation settings.
*/
export type NavigationSettings = {
/**
* The ID of the target specific frame.
*/
target?: string;
readonly 'x-class-name'?: string;
/**
* The target's type (specific frame or new tab).
*/
targetType?: 'SpecificFrame' | 'NewTab';
};
export type PageTemplate = {
creator?: Creator;
/**
* The page's creator external reference code.
*/
creatorExternalReferenceCode?: string;
/**
* The page template's creation date.
*/
dateCreated?: string;
/**
* The last time the page template changed.
*/
dateModified?: string;
/**
* The last time the page template was published.
*/
datePublished?: string;
/**
* The page template's external reference code.
*/
externalReferenceCode?: string;
/**
* The page template's key.
*/
key?: string;
/**
* A list of keywords describing the page template.
*/
keywords?: Array<string>;
/**
* The page template's name.
*/
name?: string;
/**
* The page template's specifications. A page template of type content will contain 1 page specifications for its draft layout and 1 page specifications for its published layout. A page template of type widget contains only 1 page specification for its published layout. This field is not returned by default. It can be requested via nestedFields.
*/
pageSpecifications?: Array<PageSpecification>;
pageTemplateSet?: PageTemplateSet;
pageTemplateSettings?: PageTemplateSettings;
/**
* The external references to the associated categories.
*/
taxonomyCategoryItemExternalReferences?: Array<ItemExternalReference>;
/**
* A valid external identifier to reference this page template.
*/
uuid?: string;
readonly 'x-class-name'?: string;
/**
* The type of the page template.
*/
type?: 'ContentPageTemplate' | 'WidgetPageTemplate';
};
export type PageTemplateSet = {
creator?: Creator;
/**
* The page template set's creator external reference code.
*/
creatorExternalReferenceCode?: string;
/**
* The page template set's creation date.
*/
dateCreated?: string;
/**
* The last time the page template set changed.
*/
dateModified?: string;
/**
* The page template set's description.
*/
description?: string;
/**
* The page template set's external reference code.
*/
externalReferenceCode?: string;
/**
* The page template set's key.
*/
key?: string;
/**
* The page template set's name.
*/
name?: string;
/**
* A valid external identifier to reference this page template set.
*/
uuid?: string;
readonly 'x-class-name'?: string;
};
/**
* The settings of the page template.
*/
export type PageTemplateSettings = {
readonly 'x-class-name'?: string;
type?: 'ContentPageTemplateSettings' | 'WidgetPageTemplateSettings';
};
export type WidgetPageTemplate = PageTemplate & {
type?: 'WidgetPageTemplate';
} & {
readonly 'x-class-name'?: string;
/**
* A flag that indicates whether the widget page template is active.
*/
active?: boolean;
/**
* The localized descriptions of the widget page template.
*/
description_i18n?: {
[key: string]: string;
};
/**
* The localized relative URLs to the page's rendered content.
*/
friendlyUrlPath_i18n?: {
[key: string]: string;
};
/**
* A flag that indicates whether the page created based on this page template is hidden from navigation.
*/
hiddenFromNavigation?: boolean;
/**
* The localized names of the widget page template.
*/
name_i18n?: {
[key: string]: string;
};
};
export type WidgetPageTemplateSettings = PageTemplateSettings & {
type?: 'WidgetPageTemplateSettings';
} & {
readonly 'x-class-name'?: string;
/**
* The identifier of the layout template.
*/
layoutTemplateId?: string;
navigationSettings?: NavigationSettings;
};
export type PagePageTemplate = {
items?: Array<PageTemplate>;
lastPage?: number;
totalCount?: number;
actions?: {
[key: string]: {
[key: string]: string;
};
};
page?: number;
facets?: Array<Facet>;
pageSize?: number;
};
export type PagePageTemplateSet = {
items?: Array<PageTemplateSet>;
lastPage?: number;
totalCount?: number;
actions?: {
[key: string]: {
[key: string]: string;
};
};
page?: number;
facets?: Array<Facet>;
pageSize?: number;
};
export type ContentPageS