UNPKG

@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
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; }