import * as thrift from "@creditkarma/thrift-server-core"; import * as MetricPaint from "./MetricPaint"; import * as MetricFont from "./MetricFont"; export declare enum MetricType { MetricWithFirstPaint = "firstPaint", MetricWithFirstContentfulPaint = "firstContentfulPaint", MetricWithFont = "font" } export type Metric = IMetricWithFirstPaint | IMetricWithFirstContentfulPaint | IMetricWithFont; export interface IMetricWithFirstPaint { __type: MetricType.MetricWithFirstPaint; firstPaint: MetricPaint.IMetricPaint; firstContentfulPaint?: undefined; font?: undefined; } export interface IMetricWithFirstContentfulPaint { __type: MetricType.MetricWithFirstContentfulPaint; firstPaint?: undefined; firstContentfulPaint: MetricPaint.IMetricPaint; font?: undefined; } export interface IMetricWithFont { __type: MetricType.MetricWithFont; firstPaint?: undefined; firstContentfulPaint?: undefined; font: MetricFont.IMetricFont; } export type MetricArgs = IMetricWithFirstPaintArgs | IMetricWithFirstContentfulPaintArgs | IMetricWithFontArgs; export interface IMetricWithFirstPaintArgs { firstPaint: MetricPaint.IMetricPaintArgs; firstContentfulPaint?: undefined; font?: undefined; } export interface IMetricWithFirstContentfulPaintArgs { firstPaint?: undefined; firstContentfulPaint: MetricPaint.IMetricPaintArgs; font?: undefined; } export interface IMetricWithFontArgs { firstPaint?: undefined; firstContentfulPaint?: undefined; font: MetricFont.IMetricFontArgs; } export declare const MetricCodec: thrift.IStructToolkit;