UNPKG

shyft

Version:

Model driven GraphQL API framework

28 lines (27 loc) 1.25 kB
import { DataType, DataTypeFunction } from '../datatype/DataType'; import { ProtocolConfiguration } from './ProtocolConfiguration'; import { ComplexDataType } from '../..'; export declare type ProtocolTypeSetup = { name?: string; description?: string; isProtocolDataType?: (protocolDataType: any) => boolean; }; export declare type ProtocolDataType = { name: string | Function; }; export declare class ProtocolType { name: string; description: string; isProtocolDataType: (protocolDataType: any) => boolean; protocolConfiguration: ProtocolConfiguration; private _dataTypeMap; private _dynamicDataTypeMap; constructor(setup?: ProtocolTypeSetup); addDataTypeMap(schemaDataType: DataType | DataTypeFunction, protocolDataType: ProtocolDataType): void; addDynamicDataTypeMap(schemaDataTypeDetector: Function, protocolDataType: any): void; convertToProtocolDataType(schemaDataType: DataType | ComplexDataType | DataTypeFunction, sourceName?: string, asInput?: boolean): any; setProtocolConfiguration(protocolConfiguration: any): void; getProtocolConfiguration(): ProtocolConfiguration; toString(): string; } export declare const isProtocolType: (obj: unknown) => obj is ProtocolType;