import { LitElement, nothing } from 'lit';
import { FileType } from '../types/files.types';
import { ShadowPartsController } from '../controllers/shadow-parts-controller';
declare global {
    interface HTMLElementTagNameMap {
        "wy-preview-item": WyPreviewItem;
    }
}
/**
 * Preview item that selects and renders the appropriate preview component for a file.
 * Renders a child preview component depending on format and metadata.
 *
 * **Used sub components:**
 *
 * - [`<wy-preview-image>`](./wy-preview-image.ts)
 * - [`<wy-pdf-viewer>`](./wy-pdf-viewer.ts)
 * - [`<wy-preview-media>`](./wy-preview-media.ts)
 * - [`<wy-preview-text>`](./wy-preview-text.ts)
 * - [`<wy-preview-embed>`](./wy-preview-embed.ts)
 * - [`<wy-preview-icon>`](./wy-preview-icon.ts)
 *
 * @fires {FilePreviewLoadedEventType} file-preview-loaded - The file preview is considered loaded.
 */
export declare class WyPreviewItem extends LitElement {
    static styles: import('lit').CSSResult[];
    protected exportParts: ShadowPartsController;
    /**
     * File metadata that determines which preview renderer to display.
     *
     * @internal
     */
    file?: FileType;
    /**
     * Indicates whether this preview item is the currently visible entry.
     *
     * @internal
     */
    current: boolean;
    /**
     * Emits the `file-preview-loaded` event when the preview has finished loading.
     *
     * @internal
     * @returns {boolean} `true` if the event was not canceled.
     */
    dispatchLoaded(): boolean;
    render(): import('../../node_modules/lit-html/node/lit-html.js').TemplateResult<1> | typeof nothing;
}
//# sourceMappingURL=wy-preview-item.d.ts.map