import { Page, PageData, CheckedOutVersionPageData, VersionedPageData, PublishedVersionPageData, PageIdToPageMap, PageId, VariationPage, PageCollectionSelection, NavigationData, NavigationNode, MovePagesResult, VersionInformation, PageNavigationNodeArchiveResult, RestoreNavigationMessage, RestoreNavigationResult, VariationId, PageWithNavigationCreationRequest, PageNavigationNode, PageNavigationData, ReadNews, PagePermissionResponse, ValidationArchivePageResult, PageTypeTitle, VersionId, ApprovalMetaData, MovePageTracking, VersionInformationDetail, NodeId, NavigationNodeArchiveResult } from "../models"; import { MergedPageVersionLayout } from "../models/layout/MergedPageVersionLayout"; import { ApiResponse, GuidValue } from "@omnia/fx-models"; import { VersionReference } from "../models"; import { NavigationPosition } from "../models/navigation/NavigationPosition"; import { CreatedPageWithNavigationInfo, CreatedPageInfo } from "../models"; import { EnterprisePropertyStore } from "@omnia/fx/stores"; import { InvitationOfAuthor } from "../../models"; export declare class PageService { private httpClient; enterprisePropertyStore: EnterprisePropertyStore; private multilingualStore; static appIdQuery: {}; static obsoleteSetWCMApp(appId: GuidValue): void; private readonly baseUrl; private readonly reusablePageBaseUrl; createVariationPage: (pageData: T, originalPageId: PageId, variationId: VariationId) => Promise>; updatePagePermissions: (pageId: PageId, variationId?: VariationId) => Promise; createWithNavigation: (creationRequest: PageWithNavigationCreationRequest, targetPublishingAppId?: GuidValue, targetVariationId?: string) => Promise>; move: >(nodeToMove: T, newPosition: NavigationPosition) => Promise; movePageTypeToTenant: (page: Page) => Promise>; attachPageWithNavigation: (pageData: T, urlSegment: string, position: NavigationPosition) => Promise>; /** * Archive the page with the given id, and also all navigation nodes related to the page * */ archivePage: (pageId: PageId, comment: string) => Promise; /** * Archive non-page navigation node with the given id, and also all navigation nodes related to the node * */ archiveNode: (nodeId: NodeId, comment: string) => Promise; /** * Validate an archive the page with the given id * */ validateArchivePage: (pageId: PageId) => Promise; /** * Switch parent page from pageId to another pageId * */ switchParentPage: (fromPageId: PageId, toPageId: PageId) => Promise; /** * Restore the page with page archive information * */ restore: (message: RestoreNavigationMessage) => Promise; getAllPages: (typesToGet?: number, targetPublishingAppId?: string, tenantScopeOnly?: boolean, excludeUnavailable?: boolean) => Promise>; getPageDataPageTypes: (publishingAppIds?: string[], all?: boolean, tenantScope?: boolean) => Promise>; getPageTypesTitle: (pageTypeIds: number[]) => Promise>; getPage: (pageId: PageId, targetPublishingAppId?: string) => Promise; copyPage: (pageId: PageId, targetParentPageId?: PageId, targetPublishingAppId?: string) => Promise>; /** * Create a copy of variation page by page id. This api is only supported for non-default variation page. This api is only supposed to used for creating a draft when archiving non-default variation page. The new created copy page will be an orphaned page (not associated to neither NavigationNode nor PageVariation). The reason for doing it is that we need to create the copy before archiving the source page. As a result, the copied page cannot attach to the variation at this stage. We will call AttachVariationPageAsync after that for this purpose. Please use it with care! Use copyPage if you need to copy page and create a new navigation node for the copy. * @param pageId * @param targetPublishingAppId */ copyVariationPage: (pageId: PageId, targetPublishingAppId?: string) => Promise>; /** * Attach an orphaned page as a variation page for the specified orginal page Id. * The variationPageId must belong to an orphaned page for it to work. * This api is only supposed to used for creating a draft when archiving non-default variation page. * Please check the comment for CopyVariationPageAsync to understand the reason behind it. * @param originalPageId * @param variationPageId * @param variationId * @param targetPublishingAppId */ attachVariationPage: (originalPageId: PageId, variationPageId: PageId, variationId?: VariationId, targetPublishingAppId?: string) => Promise; getPagesByIds: (pageIds: Array) => Promise; checkIn: (versionToCheckIn: CheckedOutVersionPageData) => Promise>; takeOverCheckedoutPage: (versionToTakeOver: CheckedOutVersionPageData) => Promise>; /** * Saves the data for a checkedoutversion * * (Checkedoutversiosn may change over time, other version types are immutable) * */ saveState: (versionToCheckIn: CheckedOutVersionPageData) => Promise>; checkOut: (pageId: PageId) => Promise>; undoCheckout: (checkedOutVersionToUncheckOut: CheckedOutVersionPageData) => Promise>; getCheckedOutVersion: (pageId: PageId) => Promise>; publish: (versionToPublish: VersionedPageData, targetPublishingAppId?: string, withoutNotification?: boolean, sendPreviewEmail?: boolean) => Promise>; unPublish: (versionToUnPublish: PublishedVersionPageData) => Promise>; getPublishedVersion: (pageId: PageId, targetPublishingAppId?: string) => Promise>; /** * Merges the source layout values into target layout */ mergeVersionWithParentLayoutLayouts: (versionRef: VersionReference, layoutLatestPublishedVersionId?: number) => Promise; checkSharepointPageExist: (spPageId: number) => Promise; getVersionInformation: (pageId: PageId, publishingAppId?: string) => Promise>; getVersionsDetails: (pageId: PageId, versionIds: Array, publishingAppId?: string) => Promise>; revert: (versiontoRevert: VersionedPageData) => Promise>; getPageCollectionSelection: (fromPublishingAppId: string, fromPageCollectionIds?: Array) => Promise>; private tempFixDateTimeFormatInEnterpriseProperty; visitedpage: (pageId: PageId) => Promise; inviteCoAuthors: (invitationAuthors: InvitationOfAuthor) => Promise; getSitePagesFolderFullUrl: (pageNavigationNode: PageNavigationNode) => Promise; getPageVersionMetaData: (versionId: VersionId) => Promise; getMovePageTracking: (trackingId: GuidValue) => Promise; }