pip-services3-commons-node
Version:
Portable abstractions and patterns for Pip.Services in Node.js
28 lines (27 loc) • 882 B
TypeScript
/** @module data */
import { IChangeable } from './IChangeable';
/**
* Interface for data objects that can track their changes, including logical deletion.
*
* @see [[IChangeable]]
*
* ### Example ###
*
* export class MyData implements IStringIdentifiable, ITrackable {
* public id: string;
* public field1: string;
* public field2: number;
* ...
* public change_time: Date;
* public create_time: Date;
* public deleted: boolean;
* }
*/
export interface ITrackable extends IChangeable {
/** The UTC time at which the object was created. */
create_time: Date;
/** The UTC time at which the object was last changed (created, updated, or deleted). */
change_time: Date;
/** The logical deletion flag. True when object is deleted and null or false otherwise */
deleted?: boolean;
}