/// import { ProfilerActionContract, AbstractProfilerContract } from '@ioc:Adonis/Core/Profiler'; /** * Abstract class to be extended to add support for timing functions. */ export declare abstract class AbstractProfiler implements AbstractProfilerContract { protected abstract getAction(action: string, data: any): ProfilerActionContract; /** * Profile asyncronously. If you are are not passing a callback to this method, * then consider using [[this.profile]]. */ profileAsync(action: string, data: any, cb: () => Promise): Promise; profileAsync(action: string, data?: any): Promise; /** * Get a new profiler action instance to time your code. Make sure * to call the `end` function, when manually managing the actions */ profile(action: string, data: any, cb: () => T): T; profile(action: string, data?: any): ProfilerActionContract; }