@sprucelabs/schema
Version:
Static and dynamic binding plus runtime validation and transformation to ensure your app is sound. 🤓
15 lines (14 loc) • 1.03 kB
TypeScript
import { FieldError } from '../errors/options.types';
import { FieldTemplateDetailOptions, FieldTemplateDetails } from '../types/template.types';
import AbstractField from './AbstractField';
import { DurationFieldDefinition, DurationFieldValue } from './DurationField.types';
import { ValidateOptions } from './field.static.types';
import { TextFieldDefinition } from './TextField.types';
export declare function reduceDurationToMs(duration: Partial<DurationFieldValue>): number;
export declare function buildDuration(value: string | number | Partial<DurationFieldValue>): DurationFieldValue;
export default class DurationField extends AbstractField<DurationFieldDefinition> {
static readonly description = "A span of time represented in { hours, minutes, seconds, ms }";
static generateTemplateDetails(options: FieldTemplateDetailOptions<DurationFieldDefinition>): FieldTemplateDetails;
validate(value: any, _?: ValidateOptions<TextFieldDefinition>): FieldError[];
toValueType(value: any): DurationFieldValue;
}