Home Reference Source

src/contacts-new/Contact.ts

import {User} from '../users-new/User';

import {ContactType} from './ContactType';
import {Email} from './Email';
import {Phone} from './Phone';

/**
 * Represents a contact. Look at {@link ContactRepository} documentation
 * to find out the available ways to obtain objects adhering to this interface.
 */
export interface Contact {
	readonly id: string;
	readonly name: string;
	readonly type: ContactType;
	readonly phones: readonly Phone[];
	readonly emails: readonly Email[];
	readonly favorite: boolean;
	/**
	 * When the contact is associated with a system's user, this property allows access to it.
	 */
	readonly user?: User;
}