/**
 * CWMS Data API
 * CWMS REST API for Data Retrieval
 *
 * The version of the OpenAPI document: 2.4.0-2026.3.16
 *
 *
 * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech).
 * https://openapi-generator.tech
 * Do not edit the class manually.
 */
import { DataColumnInfo } from './DataColumnInfo';
import { ParameterColumnInfo } from './ParameterColumnInfo';
import { TimeSeriesData } from './TimeSeriesData';
import { TimeSeriesProfile } from './TimeSeriesProfile';
/**
 *
 * @export
 * @interface TimeSeriesProfileInstance
 */
export interface TimeSeriesProfileInstance {
    /**
     *
     * @type {Array<DataColumnInfo>}
     * @memberof TimeSeriesProfileInstance
     */
    dataColumns?: Array<DataColumnInfo>;
    /**
     *
     * @type {Date}
     * @memberof TimeSeriesProfileInstance
     */
    firstDate?: Date;
    /**
     *
     * @type {Date}
     * @memberof TimeSeriesProfileInstance
     */
    lastDate?: Date;
    /**
     *
     * @type {string}
     * @memberof TimeSeriesProfileInstance
     */
    locationTimeZone?: string;
    /**
     * The cursor to the next page of data; null if there is no more data
     * @type {string}
     * @memberof TimeSeriesProfileInstance
     */
    readonly nextPage?: string;
    /**
     * The cursor to the current page of data
     * @type {string}
     * @memberof TimeSeriesProfileInstance
     */
    readonly page?: string;
    /**
     *
     * @type {Date}
     * @memberof TimeSeriesProfileInstance
     */
    pageFirstDate?: Date;
    /**
     *
     * @type {Date}
     * @memberof TimeSeriesProfileInstance
     */
    pageLastDate?: Date;
    /**
     * The number of records fetched per-page; this may be larger than the number of records actually retrieved
     * @type {number}
     * @memberof TimeSeriesProfileInstance
     */
    readonly pageSize?: number;
    /**
     *
     * @type {Array<ParameterColumnInfo>}
     * @memberof TimeSeriesProfileInstance
     */
    parameterColumns?: Array<ParameterColumnInfo>;
    /**
     *
     * @type {{ [key: string]: Array<TimeSeriesData>; }}
     * @memberof TimeSeriesProfileInstance
     */
    timeSeriesList?: {
        [key: string]: Array<TimeSeriesData>;
    };
    /**
     *
     * @type {TimeSeriesProfile}
     * @memberof TimeSeriesProfileInstance
     */
    timeSeriesProfile?: TimeSeriesProfile;
    /**
     * The total number of records retrieved; null or not present if not supported or unknown
     * @type {number}
     * @memberof TimeSeriesProfileInstance
     */
    readonly total?: number;
    /**
     *
     * @type {string}
     * @memberof TimeSeriesProfileInstance
     */
    version?: string;
    /**
     *
     * @type {Date}
     * @memberof TimeSeriesProfileInstance
     */
    versionDate?: Date;
}
export declare function TimeSeriesProfileInstanceFromJSON(json: any): TimeSeriesProfileInstance;
export declare function TimeSeriesProfileInstanceFromJSONTyped(json: any, ignoreDiscriminator: boolean): TimeSeriesProfileInstance;
export declare function TimeSeriesProfileInstanceToJSON(value?: TimeSeriesProfileInstance | null): any;
