import type { Transport, PageResult } from '@23blocks/contracts'; import type { AssetEvent, CreateAssetEventRequest, UpdateAssetEventRequest, ListAssetEventsParams, EventImagePresignResponse, CreateEventImageRequest, EventImage } from '../types/asset-event.js'; import type { EventReportParams, EventReportSummary, EventReportList } from '../types/report.js'; export interface AssetEventsService { /** * List events for a specific asset. * @returns Paginated list of AssetEvent records with metadata. */ list(assetUniqueId: string, params?: ListAssetEventsParams): Promise>; /** * Get a specific event for an asset. * @returns The matching AssetEvent record. */ get(assetUniqueId: string, eventUniqueId: string): Promise; /** * Create a new event for an asset. * @returns The newly created AssetEvent record. */ create(assetUniqueId: string, data: CreateAssetEventRequest): Promise; /** * Update an existing event for an asset. * @returns The updated AssetEvent record. */ update(assetUniqueId: string, eventUniqueId: string, data: UpdateAssetEventRequest): Promise; /** * Get a detailed event report list. * @returns EventReportList with events array, summary, and pagination meta. */ reportList(params: EventReportParams): Promise; /** * Get an event report summary. * @returns EventReportSummary with totals and breakdown by event type. */ reportSummary(params: EventReportParams): Promise; /** * Get a presigned URL for uploading an event image. * @returns EventImagePresignResponse with `url`, `fields`, and `key`. */ presignImage(assetUniqueId: string, eventUniqueId: string): Promise; /** * Create an event image record after upload. * @returns The newly created EventImage record with URL. */ createImage(assetUniqueId: string, eventUniqueId: string, data: CreateEventImageRequest): Promise; /** * Delete an event image. */ deleteImage(assetUniqueId: string, eventUniqueId: string, imageUniqueId: string): Promise; } export declare function createAssetEventsService(transport: Transport, _config: { apiKey: string; }): AssetEventsService; //# sourceMappingURL=asset-events.service.d.ts.map