import { CommandLineBinding } from "../../mappings/d2sb/CommandLineBinding"; import { CWLVersion } from "../../mappings/v1.0/CWLVersion"; import { Serializable } from "../interfaces/Serializable"; export declare type PrimitiveType = "array" | "enum" | "record" | "File" | "string" | "int" | "float" | "null" | "boolean" | "long" | "double" | "bytes" | "Directory" | "map" | "stdin" | "any"; export interface TypeResolution { type: PrimitiveType; items: PrimitiveType | TypeResolution; fields: Array>; symbols: string[]; isNullable: boolean; isItemOrArray: boolean; typeBinding: CommandLineBinding; name: string; doc?: string; label?: string; unionType?: any; } /** * Name has to be present even if not initially added because of Avro compatibility * @name nameRequirement * @link https://docs.oracle.com/cd/E57769_01/html/GettingStartedGuide/avroschemas.html */ export declare class TypeResolver { static resolveType(originalType: any, result?: TypeResolution): TypeResolution; static doesTypeMatch(type: PrimitiveType, value: any): boolean; static serializeType(type: TypeResolution, version?: CWLVersion): any; }