@airgap/serializer
Version:
The @airgap/serializer provides serializers used in AirGap applications.
30 lines (29 loc) • 688 B
TypeScript
export declare type SchemaTransformer = (value: any) => any;
export declare enum SchemaTypes {
STRING = "string",
NUMBER = "number",
INTEGER = "integer",
BOOLEAN = "boolean",
NULL = "null",
ARRAY = "array",
OBJECT = "object"
}
export interface SchemaRoot {
$ref: string;
$schema: string;
definitions: SchemaDefinition;
}
export interface SchemaItem {
$ref?: string;
type?: SchemaTypes;
additionalProperties?: boolean;
properties?: SchemaItem;
required?: string[];
}
export interface SchemaDefinition {
[key: string]: SchemaItem;
}
export interface SchemaInfo {
schema: SchemaRoot;
transformer?: SchemaTransformer;
}