import { TAGS } from './constants';
import { ISOXMLManager } from '../ISOXMLManager';
import { XMLElement } from '../types';
import { Position } from './Position';
import { DataLogValue } from './DataLogValue';
import { Entity, EntityConstructor } from '../types';
export declare enum TimeTypeEnum {
    Planned = "1",
    Preliminary = "2",
    Effective = "4",
    Ineffective = "5",
    Repair = "6",
    Clearing = "7",
    PoweredDown = "8"
}
export type TimeAttributes = {
    Start: string;
    Stop?: string;
    Duration?: number;
    Type: TimeTypeEnum;
    Position?: Position[];
    DataLogValue?: DataLogValue[];
    ProprietaryAttributes?: {
        [name: string]: string;
    };
    ProprietaryTags?: {
        [tag: string]: XMLElement[];
    };
};
export declare class Time implements Entity {
    attributes: TimeAttributes;
    isoxmlManager: ISOXMLManager;
    tag: TAGS;
    constructor(attributes: TimeAttributes, isoxmlManager: ISOXMLManager);
    static fromXML(xml: XMLElement, isoxmlManager: ISOXMLManager, internalId?: string, targetClass?: EntityConstructor): Promise<Entity>;
    toXML(): XMLElement;
}
