/**
 * @license Copyright (c) 2003-2026, CKSource Holding sp. z o.o. All rights reserved.
 * For licensing, see LICENSE.md or https://ckeditor.com/legal/ckeditor-licensing-options
 */
/**
 * @module real-time-collaboration/realtimecollaborativerevisionhistory/cloudservicesrevisionhistoryadapter
 * @publicApi
 */
import { Plugin, type Editor } from '@ckeditor/ckeditor5-core';
import { Users } from '@ckeditor/ckeditor5-collaboration-core';
import { RealTimeCollaborationClient } from '../realtimecollaborativeediting/realtimecollaborationclient.js';
import { WebSocketGateway, type RtcReconnectPlugin } from '../realtimecollaborativeediting/websocketgateway.js';
import { Sessions } from '../realtimecollaborativeediting/sessions.js';
import { RevisionHistoryService } from '@ckeditor/ckeditor-cloud-services-collaboration';
import { RevisionHistory } from '@ckeditor/ckeditor5-revision-history';
/**
 * The Cloud Services revision history adapter plugin.
 */
export declare class CloudServicesRevisionHistoryAdapter extends Plugin implements RtcReconnectPlugin {
    static RevisionHistoryService: typeof RevisionHistoryService;
    /**
     * @inheritDoc
     */
    static get requires(): readonly [typeof WebSocketGateway, typeof RealTimeCollaborationClient, typeof RevisionHistory, typeof Sessions, typeof Users];
    /**
     * @inheritDoc
     */
    static get pluginName(): "CloudServicesRevisionHistoryAdapter";
    /**
     * @inheritDoc
     */
    static get isOfficialPlugin(): true;
    /**
     * @inheritDoc
     */
    static get isPremiumPlugin(): true;
    /**
     * @inheritDoc
     */
    constructor(editor: Editor);
    /**
     * @inheritDoc
     */
    init(): Promise<void>;
    /**
     * A method that will be executed when the `WebSocketGateway` will reconnect.
     */
    reconnect(): Promise<void>;
    /**
     * @inheritDoc
     */
    destroy(): void;
    /**
     * Waits for the service to be ready before calling the service API.
     */
    private _waitForServiceReady;
    private _fetchMissingUsers;
}
