UNPKG

@barchart/common-js

Version:
143 lines (142 loc) 3.35 kB
/** * The formal definition of a data type which is used by an {@link Field}. * * @public */ export default class DataType { /** * Return a {@link DataType} instance for use with an {@link @Enum}. * * @public * @static * @param {Function} enumerationType - A class that extends {@link Enum} * @param description - The description * @returns {DataType} */ public static forEnum(enumerationType: Function, description: any): DataType; /** * References a string. * * @public * @static * @returns {DataType} */ public static get STRING(): DataType; /** * References a number. * * @public * @static * @returns {DataType} */ public static get NUMBER(): DataType; /** * References a boolean value. * * @public * @static * @returns {DataType} */ public static get BOOLEAN(): DataType; /** * References an object (serialized as JSON). * * @public * @static * @returns {DataType} */ public static get OBJECT(): DataType; /** * References an array. * * @public * @static * @returns {DataType} */ public static get ARRAY(): DataType; /** * References a {@link Decimal} instance. * * @public * @static * @returns {DataType} */ public static get DECIMAL(): DataType; /** * References a {@link Day} instance. * * @public * @static * @returns {DataType} */ public static get DAY(): DataType; /** * References a {@link Timestamp} instance. * * @public * @static * @returns {DataType} */ public static get TIMESTAMP(): DataType; /** * References an object whose internal properties are not important (for * serialization and deserialization purposes). * * @public * @static * @returns {DataType} */ public static get AD_HOC(): DataType; /** * @param {string} description * @param {Function=} enumerationType * @param {Function=} reviver * @param {Function=} validator * @param {Function=} builder */ constructor(description: string, enumerationType?: Function | undefined, reviver?: Function | undefined, validator?: Function | undefined, builder?: Function | undefined); /** * A function that converts data into the desired format. * * @public * @param {*} data * @returns {*} */ public convert(data: any): any; /** * Description of the data type. * * @public * @returns {string} */ public get description(): string; /** * The {@Enum} type, if applicable. * * @public * @returns {Function|null} */ public get enumerationType(): Function | null; /** * A function which "revives" a value after serialization to JSON. * * @public * @returns {Function} */ public get reviver(): Function; /** * A function validates data, returning true or false. * * @public * @returns {Function} */ public get validator(): Function; /** * Returns a string representation. * * @public * @returns {string} */ public toString(): string; #private; }