import { TAGS } from './constants';
import { ISOXMLManager } from '../ISOXMLManager';
import { XMLElement } from '../types';
import { BaseStation } from './BaseStation';
import { CodedComment } from './CodedComment';
import { CodedCommentGroup } from './CodedCommentGroup';
import { ColourLegend } from './ColourLegend';
import { CropType } from './CropType';
import { CulturalPractice } from './CulturalPractice';
import { Customer } from './Customer';
import { Device } from './Device';
import { Farm } from './Farm';
import { OperationTechnique } from './OperationTechnique';
import { Partfield } from './Partfield';
import { Product } from './Product';
import { ProductGroup } from './ProductGroup';
import { Task } from './Task';
import { ValuePresentation } from './ValuePresentation';
import { Worker } from './Worker';
import { Entity, EntityConstructor } from '../types';
export type ExternalFileContentsAttributes = {
    BaseStation?: BaseStation[];
    CodedComment?: CodedComment[];
    CodedCommentGroup?: CodedCommentGroup[];
    ColourLegend?: ColourLegend[];
    CropType?: CropType[];
    CulturalPractice?: CulturalPractice[];
    Customer?: Customer[];
    Device?: Device[];
    Farm?: Farm[];
    OperationTechnique?: OperationTechnique[];
    Partfield?: Partfield[];
    Product?: Product[];
    ProductGroup?: ProductGroup[];
    Task?: Task[];
    ValuePresentation?: ValuePresentation[];
    Worker?: Worker[];
    ProprietaryAttributes?: {
        [name: string]: string;
    };
    ProprietaryTags?: {
        [tag: string]: XMLElement[];
    };
};
export declare class ExternalFileContents implements Entity {
    attributes: ExternalFileContentsAttributes;
    isoxmlManager: ISOXMLManager;
    tag: TAGS;
    constructor(attributes: ExternalFileContentsAttributes, isoxmlManager: ISOXMLManager);
    static fromXML(xml: XMLElement, isoxmlManager: ISOXMLManager, internalId?: string, targetClass?: EntityConstructor): Promise<Entity>;
    toXML(): XMLElement;
}
