24 lines
748 B
TypeScript
24 lines
748 B
TypeScript
import { BaseApiClient } from '../base/BaseApiClient';
|
|
import type {
|
|
RecordPageViewInputDto,
|
|
RecordPageViewOutputDto,
|
|
RecordEngagementInputDto,
|
|
RecordEngagementOutputDto,
|
|
} from '../../dtos';
|
|
|
|
/**
|
|
* Analytics API Client
|
|
*
|
|
* Handles all analytics-related API operations.
|
|
*/
|
|
export class AnalyticsApiClient extends BaseApiClient {
|
|
/** Record a page view */
|
|
recordPageView(input: RecordPageViewInputDto): Promise<RecordPageViewOutputDto> {
|
|
return this.post<RecordPageViewOutputDto>('/analytics/page-view', input);
|
|
}
|
|
|
|
/** Record an engagement event */
|
|
recordEngagement(input: RecordEngagementInputDto): Promise<RecordEngagementOutputDto> {
|
|
return this.post<RecordEngagementOutputDto>('/analytics/engagement', input);
|
|
}
|
|
} |