export default class Address {
    /**
     * Create Address - This allows you to create an address on Terminal Africa
     * @param {Object[]} addressData
     * @param {string} addressData[].country
     * @param {string} addressData[].state
     * @param {string} addressData[].city
     * @param {string=} addressData[].first_name
     * @param {string=} addressData[].last_name
     * @param {string=} addressData[].email
     * @param {boolean=} addressData[].is_residential
     * @param {string=} addressData[].line1
     * @param {string=} addressData[].line2
     * @param {object=} addressData[].metadata
     * @param {string=} addressData[].phone
     * @param {string=} addressData[].zip
     * @returns object
     * @method POST
     */
    static createAddress(addressData: object): Promise<any>;
    /**
     * Update Address - This allows you to update an existing address on Terminal Africa
     * @param {string} addressId
     * @param {Object[]} addressData
     * @param {string} addressData[].country
     * @param {string} addressData[].state
     * @param {string} addressData[].city
     * @param {string=} addressData[].first_name
     * @param {string=} addressData[].last_name
     * @param {string=} addressData[].email
     * @param {boolean=} addressData[].is_residential
     * @param {string=} addressData[].line1
     * @param {string=} addressData[].line2
     * @param {object=} addressData[].metadata
     * @param {string=} addressData[].phone
     * @param {string=} addressData[].zip
     * @returns object
     * @method PUT
     */
    static updateAddress(addressId: string, addressData: object): Promise<any>;
    /**
     * GET Addresses- This allows you to fetch addresses on Terminal Africa
     * @param {string} queryParams
     * @param {string=} queryParams.page
     * @param {string=} queryParams.perPage
     * @returns object
     * @method GET
     */
    static getAddresses(queryParams: any): Promise<any>;
    /**
     * GET Addresses- This allows you to fetch an address on Terminal Africa
     * @param {string} addressId
     * @returns object
     * @method GET
     */
    static getAddress(addressId: string): Promise<any>;
    /**
     * Validate Address - This allows you to validate an address on Terminal Africa
     * @param {Object[]} addressData
     * @param {string} addressData[].country
     * @param {string} addressData[].state
     * @param {string} addressData[].city
     * @param {string=} addressData[].zip
     * @returns object
     * @method POST
     */
    static validateAddress(addressData: object): Promise<any>;
    /**
     * Set Sender Default Address - This allows you to set an address on Terminal Africa as default
     * @param {Object[]} addressData
     * @param {string} addressData[].address_id
     * @returns object
     * @method POST
     */
    static setDefaultSenderAddress(addressData: object): Promise<any>;
    /**
     * Set Default Sender Address - This allows you to get default sender address on Terminal Africa
     * @returns object
     * @method GET
     */
    static getDefaultSenderAddress(): Promise<any>;
}
