import type { IdentityCore, EntityStatus } from '@23blocks/contracts'; export type AssetEventType = 'maintenance' | 'transfer' | 'inspection' | 'repair' | 'calibration' | 'cleaning' | 'upgrade' | 'other'; export interface AssetEvent extends IdentityCore { assetUniqueId: string; eventType: AssetEventType; eventDate: Date; description?: string; performedByUniqueId?: string; cost?: number; notes?: string; status: EntityStatus; enabled: boolean; payload?: Record; } export interface CreateAssetEventRequest { eventType: AssetEventType; eventDate: Date; description?: string; performedByUniqueId?: string; cost?: number; notes?: string; payload?: Record; } export interface UpdateAssetEventRequest { eventType?: AssetEventType; eventDate?: Date; description?: string; performedByUniqueId?: string; cost?: number; notes?: string; enabled?: boolean; status?: EntityStatus; payload?: Record; } export interface ListAssetEventsParams { page?: number; perPage?: number; status?: EntityStatus; eventType?: AssetEventType; startDate?: Date; endDate?: Date; sortBy?: string; sortOrder?: 'asc' | 'desc'; } export interface EventImagePresignResponse { url: string; fields: Record; key: string; } export interface CreateEventImageRequest { key: string; filename: string; contentType?: string; } export interface EventImage { uniqueId: string; url: string; filename: string; contentType?: string; createdAt: Date; } //# sourceMappingURL=asset-event.d.ts.map