import { IntegrationEntity, IntegrationEntityType, LabeledIntegrationEntity } from './integration-entity.model'; export declare enum PhoneNumberLabel { WORK = "WORK", MOBILE = "MOBILE", HOME = "HOME", HOMEFAX = "HOMEFAX", WORKFAX = "WORKFAX", OTHERFAX = "OTHERFAX", PAGER = "PAGER", WORKMOBILE = "WORKMOBILE", WORKPAGER = "WORKPAGER", MAIN = "MAIN", GOOGLEVOICE = "GOOGLEVOICE", OTHER = "OTHER", DIRECTDIAL = "DIRECTDIAL" } export declare enum PhoneNumberType { DIRECT_DIAL = "DIRECT_DIAL", STANDARD = "STANDARD" } export type PhoneNumber = { label: PhoneNumberLabel | string; phoneNumber: string; }; export declare enum ContactScope { PRIVATE = "PRIVATE", SHARED = "SHARED", INTERNAL = "INTERNAL" } export type BaseContact = { name: string | null; firstName: string | null; lastName: string | null; email: string | null; organization: string | null; type?: IntegrationEntityType; scope?: ContactScope; }; export type ContactResult = { id: string; contactUrl: string | null; avatarUrl: string | null; readonly?: boolean; relatesTo?: IntegrationEntity[] | LabeledIntegrationEntity[]; }; export type ContactTemplate = BaseContact & { phoneNumbers: PhoneNumber[]; }; export type ContactUpdate = ContactTemplate & { id: string; }; export type Contact = ContactTemplate & ContactResult;