export interface IObjectList {
    id: number
    name: string
    count: number
}

export interface IObjectData {
    object_id: string
    id_city: number
    year: number
    id_parent: number | null
    type: number
    planning: boolean
    activity: boolean
    kvr: string | null
    jur: string | null
    fuel: string | null
    boiler_id: string | null
}

export interface IObjectValue {
    value: any
    date_s: string | null
    date_po: string | null
}

export type IObjectParamFormat =
    'bit' | 
    'int' | 'smallint' | 'bigint' | 'tinyint' | 
    'smalldatetime' | 'calculate' | 
    'TCB' | 'GTCB' | 
    'year' | 'uniqueidentifier' | 'group' | 'groupcalculate' | 'array' | string

export interface IObjectParam {
    id_object: string
    id_param: number
    name: string
    date_s: string | null
    date_po: string | null
    id_user: number
    format: IObjectParamFormat
    vtable: string
    exact_format: string | null
    unit: string | null
    values: IObjectValue[]
    parameters?: IObjectParam[]
}

export interface IObjectType {
    id: number
    name: string
}