import * as model from "./index";
/**
 * Email address.
 */
export declare class EmailAddress {
    /**
     * Attribute type map
     */
    static attributeTypeMap: Array<{
        name: string;
        baseName: string;
        type: string;
    }>;
    /**
     * Returns attribute type map
     */
    static getAttributeTypeMap(): {
        name: string;
        baseName: string;
        type: string;
    }[];
    /**
     * Address category.
     */
    category: model.EnumWithCustomOfEmailAddressCategory;
    /**
     * Display name.
     */
    displayName: string;
    /**
     * Defines whether email address is preferred.
     */
    preferred: boolean;
    /**
     * A routing type for an email.
     */
    routingType: string;
    /**
     * Email address.
     */
    address: string;
    /**
     * The original e-mail address string
     */
    originalAddressString: string;
    /**
     * Email address.
     * @param category Address category.
     * @param displayName Display name.
     * @param preferred Defines whether email address is preferred.
     * @param routingType A routing type for an email.
     * @param address Email address.
     * @param originalAddressString The original e-mail address string
     */
    constructor(category?: model.EnumWithCustomOfEmailAddressCategory, displayName?: string, preferred?: boolean, routingType?: string, address?: string, originalAddressString?: string);
}
/**
 *  EmailAddress model builder
 */
export declare class EmailAddressBuilder {
    private readonly model;
    constructor(model: EmailAddress);
    /**
     * Build model.
     */
    build(): EmailAddress;
    /**
    * Address category.
    */
    category(category: model.EnumWithCustomOfEmailAddressCategory): EmailAddressBuilder;
    /**
    * Display name.
    */
    displayName(displayName: string): EmailAddressBuilder;
    /**
    * Defines whether email address is preferred.
    */
    preferred(preferred: boolean): EmailAddressBuilder;
    /**
    * A routing type for an email.
    */
    routingType(routingType: string): EmailAddressBuilder;
    /**
    * Email address.
    */
    address(address: string): EmailAddressBuilder;
    /**
    * The original e-mail address string
    */
    originalAddressString(originalAddressString: string): EmailAddressBuilder;
}
