import { AssetData, FileProperty, CollectionValue } from './component/artstor-viewer.component'; export declare class Asset { id: string; groupId: string; typeId: number; typeName: string; title: string; thumbnail_url: string; thumbnail_size: number; kalturaUrl: string; downloadLink: string; downloadName: string; tileSource: string | string[]; collectionType: number; contributinginstitutionid: number; personalCollectionOwner: number; categoryId: string; categoryName: string; collections: CollectionValue[]; collectionId: string; collectionName: string; SSID: string; fileName: string; updated_on: string; viewportDimensions: { contentSize?: any; zoom?: number; containerSize?: any; center?: any; }; disableDownload: boolean; /** Used for holding asset file properties array from the service response */ filePropertiesArray: FileProperty[]; /** Used for holding formatted asset metadata from the service response */ formattedMetadata: FormattedMetadata; /** Used for holding media resolver info from the service response */ viewerData?: { base_asset_url?: string; panorama_xml?: string; }; constructor(assetData: AssetData, testEnv?: boolean); private formatMetadata(metadata); private buildDownloadLink(data); /** * Sets the correct typeName based on a map * @param typeId the asset's object_type_id */ private initTypeName(typeId); readonly creator: string; readonly date: string; readonly description: string; /** * Sets up the Asset object with needed properties * - Behaves like a delayed constructor * - Reports status via 'this.dataLoadedSource' observable */ private initAssetProperties(data, testEnv?); /** * Sometimes the thumbnail url will not exist and we need to fall back to a different thumbnail size */ fallbackThumbnailUrl(): void; private replaceThumbnailSize(url, size); } export interface FormattedMetadata { [fieldName: string]: string[]; }