/**
 * Octane API
 * No description provided (generated by Openapi Generator https://github.com/openapitools/openapi-generator)
 *
 * The version of the OpenAPI document: 1.0.0
 *
 *
 * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech).
 * https://openapi-generator.tech
 * Do not edit the class manually.
 */
/**
 *
 * @export
 * @interface CreateMeterArgs
 */
export interface CreateMeterArgs {
    /**
     * Type of meter. One of `COUNTER`, `GAUGE`
     * @type {string}
     * @memberof CreateMeterArgs
     */
    meterType?: CreateMeterArgsMeterTypeEnum;
    /**
     * COMING SOON: We are replacing meter_type with data_type and aggregation fields to allow more flexible metering. The aggregation type to apply to measurements. One of `MAX`, `SUM`, `TIME_WEIGHTED_SUM`.
     * @type {string}
     * @memberof CreateMeterArgs
     */
    aggregation?: CreateMeterArgsAggregationEnum;
    /**
     * Unique name identifier
     * @type {string}
     * @memberof CreateMeterArgs
     */
    name?: string;
    /**
     * Name of the events to associate with this meter. Defaults to meter name.
     * @type {string}
     * @memberof CreateMeterArgs
     */
    eventName?: string;
    /**
     * COMING SOON: We are replacing meter_type with data_type and aggregation fields to allow more flexible metering. The type of data represented by the meter. One of `CONTINUOUS`, `DISCRETE`.
     * @type {string}
     * @memberof CreateMeterArgs
     */
    dataType?: CreateMeterArgsDataTypeEnum;
    /**
     * Whether measurement values are to be considered to be the incremental change or the total.
     * @type {boolean}
     * @memberof CreateMeterArgs
     */
    isIncremental?: boolean;
    /**
     * Description of the meter
     * @type {string}
     * @memberof CreateMeterArgs
     */
    description?: string;
    /**
     * COMING SOON: We are replacing is_incremental with reporting_method field. Whether measurement values are reporting the incremental change or the total. One of `DELTA`, `TOTAL`.
     * @type {string}
     * @memberof CreateMeterArgs
     */
    reportingMethod?: CreateMeterArgsReportingMethodEnum;
    /**
     * The unit that the measurement values are reported in.
     * @type {string}
     * @memberof CreateMeterArgs
     */
    unitName?: string;
    /**
     * List of primary label keys
     * @type {Array<string>}
     * @memberof CreateMeterArgs
     */
    primaryLabels?: Array<string>;
    /**
     * DEPRECATED: List of expected label keys
     * @type {Array<string>}
     * @memberof CreateMeterArgs
     */
    expectedLabels?: Array<string>;
    /**
     * Human-friendly name used for display in UI
     * @type {string}
     * @memberof CreateMeterArgs
     */
    displayName?: string;
}
/**
* @export
* @enum {string}
*/
export declare enum CreateMeterArgsMeterTypeEnum {
    Counter = "COUNTER",
    Gauge = "GAUGE"
} /**
* @export
* @enum {string}
*/
export declare enum CreateMeterArgsAggregationEnum {
    Sum = "SUM",
    Max = "MAX",
    Min = "MIN",
    Avg = "AVG",
    Count = "COUNT",
    TimeWeightedSum = "TIME_WEIGHTED_SUM",
    Latest = "LATEST"
} /**
* @export
* @enum {string}
*/
export declare enum CreateMeterArgsDataTypeEnum {
    Continuous = "CONTINUOUS",
    Discrete = "DISCRETE"
} /**
* @export
* @enum {string}
*/
export declare enum CreateMeterArgsReportingMethodEnum {
    Delta = "DELTA",
    Total = "TOTAL"
}
export declare function CreateMeterArgsFromJSON(json: any): CreateMeterArgs;
export declare function CreateMeterArgsFromJSONTyped(json: any, ignoreDiscriminator: boolean): CreateMeterArgs;
export declare function CreateMeterArgsToJSON(value?: CreateMeterArgs | null): any;
