import { IIoK8sApimachineryPkgApisMetaV1Time } from "@kubernetes-models/apimachinery/apis/meta/v1/Time";
import { IComGithubArgoprojArgoRolloutsPkgApisRolloutsV1alpha1AnalysisPhase } from "./AnalysisPhase.js";
import { ModelData, Model } from "@kubernetes-models/base";
/**
 * Measurement is a point in time result value of a single metric, and the time it was measured
 */
export interface IMeasurement {
    /**
     * FinishedAt is the timestamp in which this measurement completed and value was collected
     */
    "finishedAt"?: IIoK8sApimachineryPkgApisMetaV1Time;
    /**
     * Message contains a message describing current condition (e.g. error messages)
     */
    "message"?: string;
    /**
     * Metadata stores additional metadata about this metric result, used by the different providers
     * (e.g. kayenta run ID, job name)
     */
    "metadata"?: {
        [key: string]: string;
    };
    /**
     * Phase is the status of this single measurement
     */
    "phase": IComGithubArgoprojArgoRolloutsPkgApisRolloutsV1alpha1AnalysisPhase;
    /**
     * ResumeAt is the  timestamp when the analysisRun should try to resume the measurement
     */
    "resumeAt"?: IIoK8sApimachineryPkgApisMetaV1Time;
    /**
     * StartedAt is the timestamp in which this measurement started to be measured
     */
    "startedAt"?: IIoK8sApimachineryPkgApisMetaV1Time;
    /**
     * Value is the measured value of the metric
     */
    "value"?: string;
}
/**
 * Measurement is a point in time result value of a single metric, and the time it was measured
 */
export declare class Measurement extends Model<IMeasurement> implements IMeasurement {
    "finishedAt"?: IIoK8sApimachineryPkgApisMetaV1Time;
    "message"?: string;
    "metadata"?: {
        [key: string]: string;
    };
    "phase": IComGithubArgoprojArgoRolloutsPkgApisRolloutsV1alpha1AnalysisPhase;
    "resumeAt"?: IIoK8sApimachineryPkgApisMetaV1Time;
    "startedAt"?: IIoK8sApimachineryPkgApisMetaV1Time;
    "value"?: string;
    constructor(data?: ModelData<IMeasurement>);
}
export type { IMeasurement as IComGithubArgoprojArgoRolloutsPkgApisRolloutsV1alpha1Measurement, Measurement as ComGithubArgoprojArgoRolloutsPkgApisRolloutsV1alpha1Measurement };
