/// <reference path="../../adonis-typings/profiler.d.ts" />
import { AbstractProfiler } from '../Profiler/AbstractProfiler';
import { ProfilerContract, ProfilerRowContract, ProfilerActionContract } from '@ioc:Adonis/Core/Profiler';
/**
 * Profiler row class is used to group profiling actions together. Any
 * number of nested rows can be created.
 */
export declare class ProfilerRow extends AbstractProfiler implements ProfilerRowContract {
    private label;
    private manager;
    private data?;
    private parentId?;
    private id;
    private timestamp;
    private start;
    private ended;
    constructor(label: string, manager: ProfilerContract, data?: any, parentId?: string | undefined);
    /**
     * Makes the log packet for the log row
     */
    private makeLogPacket;
    /**
     * Returns the action instance to be used by the [[AbstractProfiler]] class
     */
    protected getAction(action: string, data?: any): ProfilerActionContract;
    /**
     * Returns a boolean telling if a parent exists
     */
    get hasParent(): boolean;
    /**
     * End the profiler instance by emitting end packet. After
     * this all profiling calls will be considered overflows
     */
    end(data?: any): void;
    /**
     * Get a new child logger. Child logger will emit a new row
     * in the events timeline
     */
    create(label: string, data?: any): ProfilerRowContract;
}
