import { TAGS } from './constants';
import { ISOXMLManager } from '../ISOXMLManager';
import { XMLElement } from '../types';
import { Entity, EntityConstructor } from '../types';
export type CustomerAttributes = {
    CustomerLastName: string;
    CustomerFirstName?: string;
    CustomerStreet?: string;
    CustomerPOBox?: string;
    CustomerPostalCode?: string;
    CustomerCity?: string;
    CustomerState?: string;
    CustomerCountry?: string;
    CustomerPhone?: string;
    CustomerMobile?: string;
    CustomerFax?: string;
    CustomerEMail?: string;
    ProprietaryAttributes?: {
        [name: string]: string;
    };
    ProprietaryTags?: {
        [tag: string]: XMLElement[];
    };
};
export declare class Customer implements Entity {
    attributes: CustomerAttributes;
    isoxmlManager: ISOXMLManager;
    tag: TAGS;
    constructor(attributes: CustomerAttributes, isoxmlManager: ISOXMLManager);
    static fromXML(xml: XMLElement, isoxmlManager: ISOXMLManager, internalId?: string, targetClass?: EntityConstructor): Promise<Entity>;
    toXML(): XMLElement;
}
