/**
 * This file was auto-generated by Fern from our API Definition.
 */
import * as Merge from "../../../index";
/**
 * # The Engagement Object
 * ### Description
 * The `Engagement` object is used to represent an interaction noted in a CRM system.
 * ### Usage Example
 * TODO
 */
export interface EngagementRequest {
    /** The engagement's owner. */
    owner?: Merge.crm.EngagementRequestOwner;
    /** The engagement's content. */
    content?: string;
    /** The engagement's subject. */
    subject?: string;
    /**
     * The engagement's direction.
     *
     * * `INBOUND` - INBOUND
     * * `OUTBOUND` - OUTBOUND
     */
    direction?: Merge.crm.EngagementRequestDirection;
    /** The engagement type of the engagement. */
    engagementType?: Merge.crm.EngagementRequestEngagementType;
    /** The time at which the engagement started. */
    startTime?: Date;
    /** The time at which the engagement ended. */
    endTime?: Date;
    /** The account of the engagement. */
    account?: Merge.crm.EngagementRequestAccount;
    contacts?: (Merge.crm.EngagementRequestContactsItem | undefined)[];
    integrationParams?: Record<string, unknown>;
    linkedAccountParams?: Record<string, unknown>;
    remoteFields?: Merge.crm.RemoteFieldRequest[];
}
