import { BarcodeSubType } from "./BarcodeSubType";
import { BarcodeFormat } from "./BarcodeFormat";
import { IEqualsReady } from "../../Utils/Utils";
import { IAddressMetadata, IBarcodeData, IVCardAddress, VCardAddressType } from "../Interfaces/IBarcodeData";
export declare class VCardAddress implements IVCardAddress, IEqualsReady {
    type?: VCardAddressType[];
    POBox?: string;
    extendedAddress?: string;
    address?: string;
    locality?: string;
    state?: string;
    zipCode?: string;
    country?: string;
    constructor(address?: IVCardAddress);
    get isEmpty(): boolean;
    equals(other: IVCardAddress): boolean;
    toVCardValue(): string[];
    static fromVCardValue(vCardAddress: string[], meta: IAddressMetadata): VCardAddress;
}
export declare class BarcodeData implements IBarcodeData, IEqualsReady {
    barcodeFormat: BarcodeFormat;
    barcodeSubType: BarcodeSubType;
    firstName?: string;
    lastName?: string;
    organization?: string;
    position?: string;
    email?: string;
    mobilePhone?: string;
    fax?: string;
    addresses?: VCardAddress[];
    url?: string;
    data?: string;
    phone?: string;
    barcodeValue?: string;
    get isEmpty(): boolean;
    constructor(rawData?: string | IBarcodeData);
    equals(other: BarcodeData): boolean;
    private _makePunycodeUrl;
    toVCardString(): string;
    static fromVCardString(value: string): BarcodeData;
}
