import { LitElement, PropertyValues, nothing } from 'lit';
import { FilesResultType, FileType } from '../types/files.types';
import { AppType } from '../types/app.types';
import { InfiniteData, InfiniteQueryObserverResult, QueryObserverResult } from '@tanstack/query-core';
import { UserType } from '../types/users.types';
import { Ref } from 'lit/directives/ref.js';
import { SwipeScrollController } from '../controllers/swipe-scroll-controller';
import { ShadowPartsController } from '../controllers/shadow-parts-controller';
declare const WyPreview_base: import('../types/generic.types').Constructor<import('../mixins/block-mixin').BlockContextProviderProps & import('../mixins/block-mixin').BlockContextProps> & typeof LitElement;
export default class WyPreview extends WyPreview_base {
    static styles: import('lit').CSSResult[];
    protected exportParts: ShadowPartsController;
    uid: string;
    files?: FileType[];
    queryResult?: QueryObserverResult<FileType[]>;
    infiniteQueryResult?: InfiniteQueryObserverResult<InfiniteData<FilesResultType, unknown>>;
    app: AppType | undefined;
    user: UserType | undefined;
    currentId: number;
    isAttachment: boolean;
    currentFile?: FileType;
    previousFile?: FileType;
    nextFile?: FileType;
    showOverlay: boolean;
    commentsOpen: boolean;
    versionsOpen: boolean;
    versionFile?: FileType;
    sidePanelMaximized: boolean;
    private persistState;
    previewFileRef: Ref<Element>;
    swipeScrollRef: Ref<Element>;
    prevRef: Ref<Element>;
    nextRef: Ref<Element>;
    swipeScroller: SwipeScrollController;
    private disableSwipeScroll;
    private disableSwipeScrollTimeout?;
    open(fileId: number, showTab?: "comments" | "versions"): Promise<void>;
    close(): void;
    toggleSidebarTab(tab?: "comments" | "versions", state?: boolean): void;
    handleVersionFile(e: CustomEvent): void;
    handleKeys: (e: KeyboardEvent) => void;
    scrollToPrev(): void;
    scrollToNext(): void;
    blockSwipeScroll(duration?: number): void;
    unblockSwipeScroll(): void;
    setPrev(): void;
    setNext(): void;
    currentPreviewFileCallback(refElement: Element | undefined): void;
    willUpdate(changedProperties: PropertyValues<this>): void;
    renderHeader(activeFile?: FileType): import('../../node_modules/lit-html/node/lit-html.js').TemplateResult<1>;
    render(): import('../../node_modules/lit-html/node/lit-html.js').TemplateResult<1> | typeof nothing;
    updated(): void;
}
export {};
//# sourceMappingURL=wy-preview.d.ts.map