npaw-plugin-nwf
Version:
NPAW's Plugin
67 lines (66 loc) • 2.24 kB
TypeScript
/**
* Assembles parameters for different session event types
*/
export default class ParamsAssembler {
private registeredPropertiesGetter;
constructor(registeredPropertiesGetter: () => {
dimensions: object;
values: object;
} | null);
/**
* Assemble parameters for session start
* @param dimensions - Event dimensions
* @param options - Additional options (hasEndDatetime, etc.)
*/
assembleForStart(dimensions?: object, options?: {
hasEndDatetime?: boolean;
}): any;
/**
* Assemble parameters for session stop
* @param params - Stop parameters
*/
assembleForStop(params?: any): any;
/**
* Assemble parameters for event
* @param eventName - Event name
* @param dimensions - Event dimensions
* @param values - Event values
* @param topLevelDimensions - Top-level dimensions to merge
* @param options - Additional options (hasEndDatetime, etc.)
*/
assembleForEvent(eventName?: string, dimensions?: object, values?: object, topLevelDimensions?: object, options?: {
hasEndDatetime?: boolean;
}): any;
/**
* Assemble parameters for event end
* @param eventName - Event name
* @param topLevelDimensions - Top-level dimensions to merge
*/
assembleForEventEnd(eventName?: string, topLevelDimensions?: object): any;
/**
* Assemble parameters for navigation
* @param dimensions - Navigation dimensions (should include page/route)
* @param isStart - Whether this is a start navigation
*/
assembleForNav(dimensions?: object, isStart?: boolean): any;
/**
* Add error fields to base parameters
* @param baseParams - Base parameters object
* @param errorFields - Error fields (code, msg, type, metadata, duration)
*/
assembleForError(baseParams: any, errorFields: {
code: String;
msg: String;
errorType?: String;
metadata?: String;
duration?: Number;
}): any;
/**
* Build base params structure with registered properties merge
*/
private buildBaseParams;
/**
* Parse internal params object (unwrap params.params)
*/
private parseInternalParams;
}