import { CustomDimension, Instruction, TrackDownloadParams, TrackLinkParams, TrackPageViewParams, TrackSiteSearchParams, TrackSiteSearchResultClick, UserOptions } from './types'; declare class PiwikTracker { constructor(userOptions: UserOptions); private initialize; enableHeartBeatTimer(seconds: number): void; trackSiteSearch({ keyword, count, type, searchMachine, customDimensions, }: TrackSiteSearchParams): void; trackSiteSearchResultClick({ keyword, searchResult: { title, url, type: resultType, position }, amountOfResults, amountOfResultsShown, type, customDimensions, }: TrackSiteSearchResultClick): void; trackLink({ href, linkTitle, customDimensions }: TrackLinkParams): void; trackDownload({ downloadDescription, fileType, downloadUrl, customDimensions, }: TrackDownloadParams): void; trackPageView(params: TrackPageViewParams): void; pushCustomInstructionWithCustomDimensions(instruction: Instruction, customDimensions: CustomDimension[] | undefined): void; /** * Pushes an instruction to Piwik for execution, this is equivalent to pushing entries into the `_paq` array. * * For example: * * ```ts * pushInstruction('setDocumentTitle', document.title) * ``` * Is the equivalent of: * * ```ts * _paq.push(['setDocumentTitle', document.title]); * ``` * * @param name The name of the instruction to be executed. * @param args The arguments to pass along with the instruction. */ pushInstruction(name: string, ...args: any[]): PiwikTracker; pushCustomInstruction(instruction: Instruction): this; } export default PiwikTracker; //# sourceMappingURL=PiwikTracker.d.ts.map