import * as z from "zod/v3";
import { Address, Address$Outbound } from "./address.js";
import { Email, Email$Outbound } from "./email.js";
import { PassThroughBody, PassThroughBody$Outbound } from "./passthroughbody.js";
import { PhoneNumber, PhoneNumber$Outbound } from "./phonenumber.js";
export type UserInput = {
    /**
     * The parent user id
     */
    parentId?: string | null | undefined;
    /**
     * The username of the user
     */
    username?: string | null | undefined;
    /**
     * The first name of the person.
     */
    firstName?: string | null | undefined;
    /**
     * The last name of the person.
     */
    lastName?: string | null | undefined;
    /**
     * The job title of the person.
     */
    title?: string | null | undefined;
    /**
     * The division the person is currently in. Usually a collection of departments or teams or regions.
     */
    division?: string | null | undefined;
    /**
     * The department the person is currently in. [Deprecated](https://developers.apideck.com/changelog) in favor of the dedicated department_id and department_name field.
     *
     * @deprecated field: Deprecated. Use department_id instead..
     */
    department?: string | null | undefined;
    /**
     * The name of the company.
     */
    companyName?: string | null | undefined;
    /**
     * An Employee Number, Employee ID or Employee Code, is a unique number that has been assigned to each individual staff member within a company.
     */
    employeeNumber?: string | null | undefined;
    /**
     * A description of the object.
     */
    description?: string | null | undefined;
    /**
     * The URL of the user's avatar
     */
    image?: string | null | undefined;
    /**
     * language code according to ISO 639-1. For the United States - EN
     */
    language?: string | null | undefined;
    /**
     * The status of the user
     */
    status?: string | null | undefined;
    /**
     * The password of the user
     */
    password?: string | null | undefined;
    addresses?: Array<Address> | undefined;
    phoneNumbers?: Array<PhoneNumber> | undefined;
    emails: Array<Email>;
    /**
     * The pass_through property allows passing service-specific, custom data or structured modifications in request body when creating or updating resources.
     */
    passThrough?: Array<PassThroughBody> | undefined;
};
/** @internal */
export type UserInput$Outbound = {
    parent_id?: string | null | undefined;
    username?: string | null | undefined;
    first_name?: string | null | undefined;
    last_name?: string | null | undefined;
    title?: string | null | undefined;
    division?: string | null | undefined;
    department?: string | null | undefined;
    company_name?: string | null | undefined;
    employee_number?: string | null | undefined;
    description?: string | null | undefined;
    image?: string | null | undefined;
    language?: string | null | undefined;
    status?: string | null | undefined;
    password?: string | null | undefined;
    addresses?: Array<Address$Outbound> | undefined;
    phone_numbers?: Array<PhoneNumber$Outbound> | undefined;
    emails: Array<Email$Outbound>;
    pass_through?: Array<PassThroughBody$Outbound> | undefined;
};
/** @internal */
export declare const UserInput$outboundSchema: z.ZodType<UserInput$Outbound, z.ZodTypeDef, UserInput>;
export declare function userInputToJSON(userInput: UserInput): string;
//# sourceMappingURL=userinput.d.ts.map