export interface MatomoClientOptions { siteId: number | string; authToken: string; url: string; } export interface DateRange { from: Date; to: Date; } declare type Period = 'day' | 'week' | 'month' | 'year' | DateRange; export declare class MatomoClient { options: MatomoClientOptions; constructor(options: MatomoClientOptions); private baseConfig; private url; private formatDateRange; private formatDateObj; private isDateRange; private formatDate; getVisitors(options?: { period: Period; date?: Date; }): Promise<{ nbVisits: number; nbActions: number; nbVisitsConverted: number; bounceCount: number; sumVisitLength: number; maxActions: number; bounceRate: string; nbActionsPerVisit: number; avgTimeOnSite: number; }>; getPageTitles(options?: { period?: Period; date?: Date; }): Promise<{ nbVisits: number; bounceRate: string; label: string; nbHits: number; sumTimeSpent: number; nbHitsWithTimeNetwork: number; minTimeNetwork: number; maxTimeNetwork: number; nbHitsWithTimeServer: number; minTimeServer: number | undefined; maxTimeServer: number | undefined; nbHitsWithTimeTransfer: number | undefined; minTimeTransfer: number | undefined; maxTimeTransfer: number; nbHitsWithTimeDomProcessing: number; minTimeDomProcessing: number | null | undefined; maxTimeDomProcessing: number | null | undefined; nbHitsWithTimeDomCompletion: number; minTimeDomCompletion: number | null | undefined; maxTimeDomCompletion: number | null | undefined; nbHitsWithTimeOnLoad: number; minTimeOnLoad: number | null | undefined; maxTimeOnLoad: number | null | undefined; entryNbVisits: number | undefined; entryNbActions: number | undefined; entrySumVisitLength: number | undefined; entryBounceCount: number | undefined; exitNbVisits: number | undefined; sumDailyNbUniqVisitors: number | undefined; sumDailyEntryNbUniqVisitors: number | undefined; sumDailyExitNbUniqVisitors: number | undefined; avgTimeNetwork: number; avgTimeServer: number; avgTimeTransfer: number; avgTimeDomProcessing: number; avgTimeDomCompletion: number; avgTimeOnLoad: number; avgPageLoadTime: number; avgTimeOnPage: number; exitRate: string; segment: string; }[]>; getCounters(lastMinutes: number): Promise<{ visits: number; actions: number; visitors: number; visitsConverted: number; }[]>; } export {};