/**
 * Apideck
 * The Apideck OpenAPI Spec: SDK Optimized
 *
 * The version of the OpenAPI document: 10.13.0
 * Contact: support@apideck.com
 *
 * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech).
 * https://openapi-generator.tech
 * Do not edit the class manually.
 */
import { Address } from './Address';
import { Email } from './Email';
import { PassThroughBody } from './PassThroughBody';
import { PhoneNumber } from './PhoneNumber';
/**
 *
 * @export
 * @interface User
 */
export interface User {
    /**
     *
     * @type {Array<Email>}
     * @memberof User
     */
    emails: Array<Email>;
    /**
     * The unique identifier for the user
     * @type {string}
     * @memberof User
     */
    readonly id?: string;
    /**
     * The parent user id
     * @type {string}
     * @memberof User
     */
    parent_id?: string | null;
    /**
     * The username of the user
     * @type {string}
     * @memberof User
     */
    username?: string | null;
    /**
     * The first name of the person.
     * @type {string}
     * @memberof User
     */
    first_name?: string | null;
    /**
     * The last name of the person.
     * @type {string}
     * @memberof User
     */
    last_name?: string | null;
    /**
     * The job title of the person.
     * @type {string}
     * @memberof User
     */
    title?: string | null;
    /**
     * The division the person is currently in. Usually a collection of departments or teams or regions.
     * @type {string}
     * @memberof User
     */
    division?: string | null;
    /**
     * The department the person is currently in. [Deprecated](https://developers.apideck.com/changelog) in favor of the dedicated department_id and department_name field.
     * @type {string}
     * @memberof User
     */
    department?: string | null;
    /**
     * The name of the company.
     * @type {string}
     * @memberof User
     */
    company_name?: string | null;
    /**
     * An Employee Number, Employee ID or Employee Code, is a unique number that has been assigned to each individual staff member within a company.
     * @type {string}
     * @memberof User
     */
    employee_number?: string | null;
    /**
     * A description of the object.
     * @type {string}
     * @memberof User
     */
    description?: string | null;
    /**
     * The URL of the user's avatar
     * @type {string}
     * @memberof User
     */
    image?: string | null;
    /**
     * language code according to ISO 639-1. For the United States - EN
     * @type {string}
     * @memberof User
     */
    language?: string | null;
    /**
     * The status of the user
     * @type {string}
     * @memberof User
     */
    status?: string | null;
    /**
     * The password of the user
     * @type {string}
     * @memberof User
     */
    password?: string | null;
    /**
     *
     * @type {Array<Address>}
     * @memberof User
     */
    addresses?: Array<Address>;
    /**
     *
     * @type {Array<PhoneNumber>}
     * @memberof User
     */
    phone_numbers?: Array<PhoneNumber>;
    /**
     * When custom mappings are configured on the resource, the result is included here.
     * @type {object}
     * @memberof User
     */
    readonly custom_mappings?: object | null;
    /**
     * The date and time when the user was last updated.
     * @type {string}
     * @memberof User
     */
    readonly updated_at?: string | null;
    /**
     * The date and time when the user was created.
     * @type {string}
     * @memberof User
     */
    readonly created_at?: string | null;
    /**
     *
     * @type {PassThroughBody}
     * @memberof User
     */
    pass_through?: PassThroughBody;
}
export declare function UserFromJSON(json: any): User;
export declare function UserFromJSONTyped(json: any, ignoreDiscriminator: boolean): User;
export declare function UserToJSON(value?: User | null): any;
