import { ChangeDetectorRef, ElementRef, EventEmitter, OnDestroy, OnInit, TemplateRef } from "@angular/core"; import { MatDialog } from "@angular/material/dialog"; import { DomSanitizer, SafeUrl } from "@angular/platform-browser"; import { ArchivedSession, AssetWrapper, ISessionNote, MediaFile, MediaFileMetadata } from "@cygnus-reach/session"; import { Subject } from "rxjs"; import { SessionService } from "../../../../core"; import { GenericDataTableColumn as Column, MediaNotificationEventContext, NotificationEvent } from "../../../../shared"; import { SessionResourcesIcons } from "../../models/icon-interfaces"; import { SessionResourcesText } from "../../models/text-interfaces"; import * as i0 from "@angular/core"; export declare class SessionResourcesComponent implements OnInit, OnDestroy { uiService: SessionService; private dialog; ref: ChangeDetectorRef; private sanitizer; includeMedia: boolean; includeNotes: boolean; includeHistory: boolean; dragMediaSave: boolean; text: SessionResourcesText; icons?: SessionResourcesIcons; get cardScale(): number; set cardScale(cardScale: number); private _cardScale; /** * The editor to be associated with session notes upon saving. * If not provided, the existing editor will be used, both in active and archived sessions. * Note that the editor of the active session's note will not be initialized without saving, which should be handled by the consuming application. */ editor?: string; customCols?: Column[]; listAssetCount: boolean; sessions: ArchivedSession[]; uiNotification: EventEmitter>; userTpl: TemplateRef; companyTpl: TemplateRef; downloadRef: ElementRef; pageLimit: number; assetTransfer: Subject<{ prev: AssetWrapper; next: AssetWrapper; }>; sending: boolean; clearSelection: Subject; downloadUrl: SafeUrl; editing: AssetWrapper | undefined; viewing: AssetWrapper | undefined; notesAutosave: Subject; get noteTouched(): boolean; set noteTouched(touched: boolean); _noteTouched: boolean; constructor(uiService: SessionService, dialog: MatDialog, ref: ChangeDetectorRef, sanitizer: DomSanitizer); ngOnInit(): void; ngOnDestroy(): void; setEditing(file: AssetWrapper | undefined): void; setViewing(file: AssetWrapper | undefined): void; setSession(session: ArchivedSession | undefined): void; downloadFile(wrapper: AssetWrapper, filename?: string): void; onDownload(files: Array>): void; onSend(files: Array>): Promise; onDelete(files: Array>): void; updateFile(event: { previous: AssetWrapper; saved: AssetWrapper; }): void; exitEditing(event: { previous: AssetWrapper; saved: AssetWrapper; } | undefined): void; onNoteSaved(data: ISessionNote): void; onNoteTouched(touched: boolean): void; isMediaFile(wrapper: AssetWrapper): boolean; sortMedia(a: Array>, b: Array>): number; static ɵfac: i0.ɵɵFactoryDeclaration; static ɵcmp: i0.ɵɵComponentDeclaration; }