emr-types
Version:
Comprehensive TypeScript Types Library for Electronic Medical Record (EMR) Applications - Domain-Driven Design with Zod Validation
81 lines • 2.15 kB
TypeScript
/**
* Status Enum
*
* Common status values used across domains
*
* @enum Status
* @description Generic status enum for domain entities
*/
export declare enum Status {
ACTIVE = "active",
INACTIVE = "inactive",
PENDING = "pending",
APPROVED = "approved",
REJECTED = "rejected",
SUSPENDED = "suspended",
DELETED = "deleted",
ARCHIVED = "archived",
DRAFT = "draft",
PUBLISHED = "published",
EXPIRED = "expired",
CANCELLED = "cancelled",
COMPLETED = "completed",
IN_PROGRESS = "in_progress",
ON_HOLD = "on_hold",
FAILED = "failed",
SUCCESS = "success",
ERROR = "error",
WARNING = "warning",
INFO = "info"
}
/**
* Status Categories
*
* Group statuses by their meaning
*/
export declare const StatusCategories: {
/** Active states */
readonly ACTIVE: readonly [Status.ACTIVE, Status.APPROVED, Status.PUBLISHED, Status.SUCCESS];
/** Inactive states */
readonly INACTIVE: readonly [Status.INACTIVE, Status.SUSPENDED, Status.DELETED, Status.ARCHIVED];
/** Pending states */
readonly PENDING: readonly [Status.PENDING, Status.DRAFT, Status.ON_HOLD];
/** Completed states */
readonly COMPLETED: readonly [Status.COMPLETED, Status.EXPIRED, Status.CANCELLED];
/** Error states */
readonly ERROR: readonly [Status.REJECTED, Status.FAILED, Status.ERROR];
};
/**
* Status Utility Functions
*/
export declare const StatusUtils: {
/**
* Check if a status is active
*/
isActive: (status: Status) => boolean;
/**
* Check if a status is inactive
*/
isInactive: (status: Status) => boolean;
/**
* Check if a status is pending
*/
isPending: (status: Status) => boolean;
/**
* Check if a status is completed
*/
isCompleted: (status: Status) => boolean;
/**
* Check if a status is an error
*/
isError: (status: Status) => boolean;
/**
* Get status display name
*/
getDisplayName: (status: Status) => string;
/**
* Get status color (for UI)
*/
getColor: (status: Status) => string;
};
//# sourceMappingURL=Status.d.ts.map