import { TemplateResult, PropertyValues } from 'lit';
import { type IRequestTime, RequestTime } from '@api-client/core/models/RequestTime.js';
import { ITimingViewData, ITimingProgressInfo } from '../../lib/http/Har.js';
import ApiElement from '../ApiElement.js';
import '../../md/date/ui-date-time.js';
import '../../md/progress/ui-progress.js';
export default class LogTimings extends ApiElement {
    /**
     * The ordered list of timings for each redirect.
     * The last timing is the final request.
     */
    accessor timings: (RequestTime | IRequestTime)[] | undefined;
    /**
     * When set it renders mobile friendly view
     * @attribute
     */
    accessor narrow: boolean;
    protected accessor withRedirects: boolean;
    protected accessor viewData: ITimingViewData[];
    protected accessor totalTime: number;
    protected willUpdate(cp: PropertyValues<this>): void;
    protected processTimings(): void;
    protected render(): TemplateResult;
    protected renderNoData(): TemplateResult;
    protected renderRedirectsTable(): TemplateResult;
    protected renderRedirectItem(item: ITimingViewData, index: number): TemplateResult;
    /**
     * @returns The template for a single timing item.
     */
    protected renderTiming(info: ITimingViewData): TemplateResult;
    /**
     * Renders a single timing row.
     * @param duration Max value of the progress
     * @param info The computed timing values.
     */
    protected renderTimingRow(duration: number, info?: ITimingProgressInfo): TemplateResult | string;
    /**
     * Renders the start time row
     * @param time The timestamp of the request
     */
    protected renderStartTime(time: number): TemplateResult | string;
}
//# sourceMappingURL=LogTimings.d.ts.map