import { ThumbnailLoaderService, ThumbnailTaskEntity } from './thumbnailLoader.service'; import { Media } from './Media'; import { MediaIcon } from './MediaIcon'; import { PersonDTO } from '../../../../common/entities/PersonDTO'; export declare class ThumbnailManagerService { private thumbnailLoader; constructor(thumbnailLoader: ThumbnailLoaderService); getThumbnail(photo: Media): Thumbnail; getLazyThumbnail(photo: Media): Thumbnail; getIcon(photo: MediaIcon): IconThumbnail; getPersonThumbnail(person: PersonDTO): PersonThumbnail; } export declare abstract class ThumbnailBase { protected thumbnailService: ThumbnailLoaderService; loading: boolean; protected available: boolean; protected src: string; protected error: boolean; protected onLoad: () => void; protected thumbnailTask: ThumbnailTaskEntity; protected constructor(thumbnailService: ThumbnailLoaderService); abstract set Visible(visible: boolean); set OnLoad(onLoad: () => void); get Available(): boolean; get Src(): string; get Loading(): boolean; get Error(): boolean; destroy(): void; } export declare class PersonThumbnail extends ThumbnailBase { private person; constructor(person: PersonDTO, thumbnailService: ThumbnailLoaderService); set Visible(visible: boolean); } export declare class IconThumbnail extends ThumbnailBase { private media; constructor(media: MediaIcon, thumbnailService: ThumbnailLoaderService); set Visible(visible: boolean); } export declare class Thumbnail extends ThumbnailBase { readonly media: Media; constructor(media: Media, thumbnailService: ThumbnailLoaderService, autoLoad?: boolean); set CurrentlyWaiting(value: boolean); set Visible(visible: boolean); load(): void; }