import type * as Merge from "../../../index";
/**
 * # The User Object
 * ### Description
 * The `User` object is used to represent a user with a login to the ticketing system.
 * Users are either assignees who are directly responsible or a viewer on a `Ticket`/ `Collection`.
 *
 * ### Usage Example
 * TODO
 */
export interface User {
    id?: string;
    /** The third-party API ID of the matching object. */
    remoteId?: string;
    /** The datetime that this object was created by Merge. */
    createdAt?: Date;
    /** The datetime that this object was modified by Merge. */
    modifiedAt?: Date;
    /** The user's name. */
    name?: string;
    /** The user's email address. */
    emailAddress?: string;
    /** Whether or not the user is active. */
    isActive?: boolean;
    teams?: (Merge.ticketing.UserTeamsItem | undefined)[];
    roles?: (Merge.ticketing.UserRolesItem | undefined)[];
    /** The user's avatar picture. */
    avatar?: string;
    /** Indicates whether or not this object has been deleted in the third party platform. Full coverage deletion detection is a premium add-on. Native deletion detection is offered for free with limited coverage. [Learn more](https://docs.merge.dev/integrations/hris/supported-features/). */
    remoteWasDeleted?: boolean;
    fieldMappings?: Record<string, unknown>;
    remoteData?: Merge.ticketing.RemoteData[];
}
