import { UmbDocumentPublishedPendingChangesManager } from '../pending-changes/index.js';
import { UmbContextBase } from '../../../../../libs/class-api/index.js';
import type { UmbControllerHost } from '../../../../../libs/controller-api/index.js';
import type { UmbPublishableWorkspaceContext } from '../../../../core/workspace/index.js';
export declare class UmbDocumentPublishingWorkspaceContext extends UmbContextBase implements UmbPublishableWorkspaceContext {
    #private;
    /**
     * Manages the pending changes for the published document.
     * @memberof UmbDocumentPublishingWorkspaceContext
     */
    readonly publishedPendingChanges: UmbDocumentPublishedPendingChangesManager;
    workspaceAlias: string;
    constructor(host: UmbControllerHost);
    getEntityType(): string;
    publish(): Promise<void>;
    /**
     * Save and publish the document
     * @returns {Promise<void>}
     * @memberof UmbDocumentPublishingWorkspaceContext
     */
    saveAndPublish(): Promise<void>;
    /**
     * Schedule the document for publishing
     * @returns {Promise<void>}
     * @memberof UmbDocumentPublishingWorkspaceContext
     */
    schedule(): Promise<void>;
    /**
     * Publish the document with descendants
     * @returns {Promise<void>}
     * @memberof UmbDocumentPublishingWorkspaceContext
     */
    publishWithDescendants(): Promise<void>;
    /**
     * Unpublish the document
     * @returns {Promise<void>}
     * @memberof UmbDocumentPublishingWorkspaceContext
     */
    unpublish(): Promise<void>;
}
export { UmbDocumentPublishingWorkspaceContext as api };
