import type { BaseDataModel, IFieldSnapshot } from '@univerjs/core';
import type { IRenderContext, IRenderModule } from '@univerjs/engine-render';
import type { BaseUIStateService } from '../services/base-ui-state.service';
import { IBaseProjectionService } from '@univerjs-pro/bases';
import { Disposable, ICommandService, LocaleService, ThemeService } from '@univerjs/core';
import { ICanvasColorService } from '@univerjs/engine-render';
import { IBaseRenderService } from '../services/base-render.service';
declare const BASE_CANVAS_COMPONENT_KEY = "bases-ui.canvas-render-component";
export type CalendarMonthWheelDirection = 'prev' | 'next';
export interface ICalendarMonthWheelGestureState {
    delta: number;
    lockedUntil: number;
}
export declare function resetCalendarMonthWheelGesture(): ICalendarMonthWheelGestureState;
export declare function advanceCalendarMonthWheelGesture(state: ICalendarMonthWheelGestureState, delta: number, deltaMode: number, now?: number): {
    state: ICalendarMonthWheelGestureState;
    direction: CalendarMonthWheelDirection | null;
};
export declare function resolveBaseKanbanLoopColor(themeService: ThemeService, index: number): string;
export declare class BaseRenderController extends Disposable implements IRenderModule {
    private readonly _context;
    private readonly _projectionService;
    private readonly _stateService;
    private readonly _themeService;
    private readonly _localeService;
    private readonly _renderService?;
    private readonly _commandService?;
    private readonly _canvasColorService?;
    private _component;
    private _controller;
    private _projection;
    private _projectionSnapshot;
    private _projectionTableId;
    private _projectionViewId;
    private _viewId;
    private _pointerController;
    private _pointerTarget;
    private _pointerDownHandler;
    private _contextMenuHandler;
    private _pointerMoveHandler;
    private _pointerLeaveHandler;
    private _wheelHandler;
    private _gridHoverAddField;
    private _gridHoverAddRecordRow;
    private _gridHoverFieldId;
    private _gridHoverFieldMenuFieldId;
    private _gridHoverFieldDescriptionFieldId;
    private _gridHoverRecordId;
    private _gridHoverCellRecordId;
    private _gridHoverCellFieldId;
    private _gridHoverLinkActionRecordId;
    private _gridHoverLinkActionFieldId;
    private _gridHoverOpenRecordId;
    private _gridSelectOptionRemoveHover;
    private _gridHoverRowHeaderRecordId;
    private _summaryBarHovered;
    private _gridRatingHover;
    private _gridColumnResizeDragX;
    private _gridFreezeDragX;
    private _gridFreezeHoverY;
    private _gridFieldDrag;
    private _gridRowDrag;
    private _gridFillPreview;
    private _kanbanCardDrag;
    private _kanbanDragTargetGroupKey;
    private _kanbanHoverRecordId;
    private _kanbanHoverAddRecordGroupKey;
    private _kanbanHoverAddGroup;
    private _kanbanLaneScrollbarVisibleKeys;
    private _kanbanLaneScrollbarHoverKey;
    private _kanbanLaneScrollbarDraggingKey;
    private _kanbanLaneScrollbarHideTimers;
    private _galleryHoverRecordId;
    private _galleryCardDrag;
    private _calendarHover;
    private _calendarEventDrag;
    private _ganttHover;
    private _ganttBarDrag;
    private _calendarMonthWheelGesture;
    private _calendarMonthWheelResetTimer;
    private _scrollbarVisible;
    private _scrollbarHoverAxis;
    private _scrollbarDraggingAxis;
    private _scrollbarHideTimer;
    private _resizeObserver;
    private _resizeTarget;
    private _resizeFrame;
    private _lastViewportSize;
    private readonly _initializedGanttScrollViewIds;
    private readonly _initializedCalendarCurrentTimeScrollViewIds;
    private _lastGalleryLayoutRefreshKey;
    private _galleryLayoutRefreshFrame;
    constructor(_context: IRenderContext<BaseDataModel>, _projectionService: IBaseProjectionService, _stateService: BaseUIStateService, _themeService: ThemeService, _localeService: LocaleService, _renderService?: IBaseRenderService | undefined, _commandService?: ICommandService | undefined, _canvasColorService?: ICanvasColorService | undefined);
    private _ensureMainViewport;
    dispose(): void;
    private _refresh;
    private _isDarkMode;
    private _ensureResizeObserver;
    private _disconnectResizeObserver;
    private _clampScrollForViewport;
    private _scheduleGalleryLayoutRefreshAfterStateChange;
    private _clearGalleryLayoutRefreshFrame;
    private _clearCalendarMonthWheelResetTimer;
    private _handleCalendarMonthWheel;
    private _getCalendarCurrentTimeInitialScrollY;
    private _activeRecordId;
    private _getProjection;
    private _ensureController;
    private _ensureComponent;
    private _ensurePointerHandler;
    private _setGridColumnSelection;
    private _toggleGridRowSelection;
    private _toggleAllGridRowsSelection;
    private _startGridColumnResizeDrag;
    private _startGridFreezeDrag;
    private _startGridFieldDrag;
    private _frozenFieldCountForX;
    private _fieldDragTargetFromPointer;
    private _startGridSelectionDrag;
    private _startGridFillDrag;
    private _applyGridFill;
    private _resolveAttachmentExpandClick;
    private _startProgressDrag;
    private _progressValueFromPointer;
    private _startScrollbarDrag;
    private _startKanbanLaneScrollbarDrag;
    private _scrollbarEdgeAxis;
    private _scrollbarViewportWidth;
    private _scrollMetrics;
    private _scrollMetricsFor;
    private _showScrollbar;
    private _scheduleScrollbarHide;
    private _clearScrollbarHideTimer;
    private _showKanbanLaneScrollbar;
    private _scheduleKanbanLaneScrollbarHide;
    private _clearKanbanLaneScrollbarHideTimer;
    private _clearKanbanLaneScrollbarHideTimers;
    private _createKanbanGroupOption;
    private _createKanbanGroupDraft;
    private _toggleCheckbox;
    private _removeSelectOptionValue;
    private _setRatingValue;
    private _startKanbanCardDrag;
    private _startGalleryCardDrag;
    private _resolveGalleryCardDropTarget;
    private _getGalleryDropOrderKey;
    private _kanbanGroupValue;
    private _startCalendarEventDrag;
    private _startCalendarDraftDrag;
    private _calendarLayout;
    private _calendarEventDragForRender;
    private _calendarDraftTitle;
    private _stringifyCalendarDraftTitle;
    private _calendarDraftModeForRange;
    private _calendarDraftRangeFromPointers;
    private _calendarDraftRangeToRect;
    private _calendarDraftRangeToRects;
    private _calendarDragRangeToRects;
    private _calendarUnionRects;
    private _calendarPointerToTime;
    private _calendarRangeToRect;
    private _autoScrollCalendarTime;
    private _calendarSlotMs;
    private _snapCalendarTime;
    private _resolveGanttRowDropTarget;
    private _getGanttDropOrderKey;
    private _startGanttBarDrag;
    private _navigateCalendarAnchor;
    private _projectionFirstCalendarEventStart;
    private _scrollGanttToToday;
    private _scrollGanttRecordHorizontallyIntoView;
    private _setGanttRecordDateRange;
    private _navigateGanttTimeline;
    private _createCalendarDraftValues;
    private _createCalendarDraftValuesForRange;
    private _createRecordSnapshot;
    private _ensureCalendarDraftRangeEndDateField;
    private _ensureCalendarDraftDateFieldsIncludeTime;
    private _calendarDraftColor;
    private _detachPointerHandler;
    private _resolveContext;
    private _requestActiveInlineEditorCommit;
    private _viewport;
    private _hitAnchor;
    private _hitStateAnchor;
}
export declare function isNonVirtualRecordHit(hit: {
    type?: string;
    recordId?: string;
    virtual?: boolean;
} | null, rawVirtual?: boolean): boolean;
export declare function isBasePointerHoverHit(hit: {
    type?: string;
} | null, hasAddRecordHover?: boolean): boolean;
export declare function resolveBaseClickableCellUrl(field: Pick<IFieldSnapshot, 'type'> | undefined, value: unknown): string | null;
export declare function resolveBaseClickableCellUrlForHit(hit: {
    type?: string;
} | null, field: Pick<IFieldSnapshot, 'type'> | undefined, value: unknown): string | null;
export { BASE_CANVAS_COMPONENT_KEY };
