import { Disposable, IAuthzIoService, ICommandService, IPermissionService, IUndoRedoService, IUniverInstanceService, UserManagerService } from '@univerjs/core';
import { RangeProtectionRenderModel, RangeProtectionRuleModel, SheetInterceptorService, WorksheetProtectionPointModel, WorksheetProtectionRuleModel } from '@univerjs/sheets';
import { IDialogService } from '@univerjs/ui';
export declare class SheetPermissionInitController extends Disposable {
    private readonly _univerInstanceService;
    private readonly _dialogService;
    private _permissionService;
    private _authzIoService;
    private _rangeProtectionRuleModel;
    private _worksheetProtectionRuleModel;
    private _userManagerService;
    private _worksheetProtectionPointRuleModel;
    private _sheetInterceptorService;
    private _selectionProtectionRenderModel;
    private _undoRedoService;
    private _commandService;
    constructor(_univerInstanceService: IUniverInstanceService, _dialogService: IDialogService, _permissionService: IPermissionService, _authzIoService: IAuthzIoService, _rangeProtectionRuleModel: RangeProtectionRuleModel, _worksheetProtectionRuleModel: WorksheetProtectionRuleModel, _userManagerService: UserManagerService, _worksheetProtectionPointRuleModel: WorksheetProtectionPointModel, _sheetInterceptorService: SheetInterceptorService, _selectionProtectionRenderModel: RangeProtectionRenderModel, _undoRedoService: IUndoRedoService, _commandService: ICommandService);
    private _initRangePermissionFromSnapshot;
    private _initRangePermissionChange;
    initWorkbookPermissionChange(_unitId?: string): Promise<void>;
    private _initWorkbookPermissionFromSnapshot;
    private _initWorksheetPermissionChange;
    private _initWorksheetPermissionPointsChange;
    private _initWorksheetPermissionFromSnapshot;
    private _initUserChange;
    private _initViewModelByRangeInterceptor;
    private _initViewModelBySheetInterceptor;
    refreshPermission(unitId: string, permissionId: string): void;
    private _refreshPermissionByCollaCreate;
}
