cql-execution
Version:
An execution framework for the Clinical Quality Language (CQL)
113 lines (112 loc) • 4.28 kB
TypeScript
import { Uncertainty } from './uncertainty';
import { DateTime as LuxonDateTime } from 'luxon';
declare abstract class AbstractDate {
year: number | null;
month: number | null;
day: number | null;
constructor(year?: number | null, month?: number | null, day?: number | null);
abstract getPrecision(): string | null;
abstract getDateTime(): DateTime;
abstract copy(): AbstractDate;
abstract toLuxonDateTime(): LuxonDateTime;
abstract isDate: boolean;
abstract isDateTime: boolean;
isPrecise(): any;
isImprecise(): boolean;
isMorePrecise(other: any): boolean;
isLessPrecise(other: any): boolean;
isSamePrecision(other: any): boolean;
equals(other: any): any;
equivalent(other: any): any;
sameAs(other: any, precision?: any): boolean | null;
sameOrBefore(other: any, precision?: any): boolean | null;
sameOrAfter(other: any, precision?: any): boolean | null;
before(other: any, precision?: any): boolean | null;
after(other: any, precision?: any): boolean | null;
add(offset: any, field: any): any;
getFieldFloor(field: any): 1 | 0;
getFieldCieling(field: any): number;
}
export declare class DateTime extends AbstractDate {
hour: number | null;
minute: number | null;
second: number | null;
millisecond: number | null;
timezoneOffset: number | null;
static readonly Unit: {
YEAR: string;
MONTH: string;
WEEK: string;
DAY: string;
HOUR: string;
MINUTE: string;
SECOND: string;
MILLISECOND: string;
};
static readonly FIELDS: string[];
static parse(string: any): DateTime | null;
static fromJSDate(date: any, timezoneOffset?: any): DateTime;
static fromLuxonDateTime(luxonDT: LuxonDateTime): DateTime;
constructor(year?: number | null, month?: number | null, day?: number | null, hour?: number | null, minute?: number | null, second?: number | null, millisecond?: number | null, timezoneOffset?: number | null);
get isDateTime(): boolean;
get isDate(): boolean;
copy(): DateTime;
successor(): any;
predecessor(): any;
convertToTimezoneOffset(timezoneOffset?: number): DateTime;
differenceBetween(other: any, unitField: any): Uncertainty | null;
durationBetween(other: any, unitField: any): Uncertainty | null;
isUTC(): boolean;
getPrecision(): string | null;
getPrecisionValue(): any;
toLuxonDateTime(): LuxonDateTime;
toLuxonUncertainty(): Uncertainty;
toJSDate(ignoreTimezone?: boolean): globalThis.Date;
toJSON(): string;
_pad(num: number): string;
toString(): string;
toStringTime(): string;
toStringDateTime(): string;
getDateTime(): this;
getDate(): Date;
getTime(): DateTime;
isTime(): boolean;
_implicitlyConvert(other: any): any;
reducedPrecision(unitField?: string | null): DateTime;
}
export declare class Date extends AbstractDate {
static readonly Unit: {
YEAR: string;
MONTH: string;
WEEK: string;
DAY: string;
};
static readonly FIELDS: string[];
static parse(string: any): Date | null;
constructor(year?: number | null, month?: number | null, day?: number | null);
get isDate(): boolean;
get isDateTime(): boolean;
copy(): Date;
successor(): any;
predecessor(): any;
differenceBetween(other: any, unitField: any): Uncertainty | null;
durationBetween(other: any, unitField: any): Uncertainty | null;
getPrecision(): string | null;
getPrecisionValue(): any;
toLuxonDateTime(): LuxonDateTime;
toLuxonUncertainty(): Uncertainty;
toJSDate(): globalThis.Date;
static fromJSDate(date: any): Date;
static fromLuxonDateTime(luxonDT: LuxonDateTime): Date;
toJSON(): string;
toString(): string;
getDateTime(timeZoneOffset?: number | null): DateTime;
reducedPrecision(unitField?: string): Date;
}
export declare const MIN_DATETIME_VALUE: DateTime | null;
export declare const MAX_DATETIME_VALUE: DateTime | null;
export declare const MIN_DATE_VALUE: Date | null;
export declare const MAX_DATE_VALUE: Date | null;
export declare const MIN_TIME_VALUE: DateTime | undefined;
export declare const MAX_TIME_VALUE: DateTime | undefined;
export {};