@formant/ava
Version:
A framework for automated visual analytics.
80 lines (79 loc) • 2.55 kB
TypeScript
import type { DateFieldInfo, FieldInfo, NumberFieldInfo, StringFieldInfo } from './types';
/**
* Check if it is StringFieldInfo.
*/
export declare function isStringFieldInfo(x: FieldInfo): x is StringFieldInfo;
/**
* Check if it is NumberFieldInfo.
*/
export declare function isNumberFieldInfo(x: FieldInfo): x is NumberFieldInfo;
/**
* Check if it is DateFieldInfo.
*/
export declare function isDateFieldInfo(x: FieldInfo): x is DateFieldInfo;
/**
* Checks if field is constant
* @param info - The {@link FieldInfo} to process
*/
export declare function isConst(info: FieldInfo): boolean;
/**
* Checks if field is an ordinal.
* @param info - Field Info
*/
export declare function isOrdinal(info: FieldInfo): boolean;
/**
* Checks if field is an unique.
* @param info - The {@link FieldInfo} to process
*/
export declare function isUnique(info: FieldInfo): boolean;
/**
* Checks if field is discrete.
* @remarks
* @param info - The {@link FieldInfo} to process
*/
export declare function isDiscrete(info: FieldInfo): boolean;
/**
* Checks if field is a continuous.
* @param info - The {@link FieldInfo} to process
*/
export declare function isContinuous(info: FieldInfo): boolean;
/**
* Checks if field is an interval.
* @param info - The {@link FieldInfo} to process
*/
export declare function isInterval(info: FieldInfo): boolean;
/**
* Checks if field is a nominal.
* @param info - The {@link FieldInfo} to process
*/
export declare function isNominal(info: FieldInfo): boolean;
/**
* Checks if field is a time.
* @param info - Field Info
*/
export declare function isTime(info: FieldInfo): boolean;
/**
* Analyze string field info.
* @param value - data
*/
export declare function analyzeString(value: string[]): Omit<StringFieldInfo, keyof FieldInfo>;
/**
* Analyze number field info.
* @param value - data
*/
export declare function analyzeNumber(value: number[]): Omit<NumberFieldInfo, keyof FieldInfo>;
/**
* Analyze date field info.
* @param value - data
*/
export declare function analyzeDate(value: (string | Date)[], isInteger?: boolean): Omit<DateFieldInfo, keyof FieldInfo>;
/**
* Determine what type a value is, may be one of [integer float date string null].
*/
export declare function analyzeType(value: unknown, strictDatePattern?: boolean): 'null' | 'integer' | 'float' | 'date' | 'string';
/**
* Analyze field info.
* @param value - data
* @public
*/
export declare function analyzeField(value: unknown[], strictDatePattern?: boolean): StringFieldInfo | NumberFieldInfo | DateFieldInfo;