UNPKG

@stryke/capnp

Version:

A package to assist in running the Cap'n Proto compiler and creating Cap'n Proto serialization protocol schemas.

44 lines (41 loc) 1.29 kB
import { Node, CodeGeneratorRequest_RequestedFile_Import, Field } from 'capnp-es/capnp/schema'; import { ParsedCommandLine } from 'typescript'; interface CodeGeneratorFileContext { readonly nodes: Node[]; readonly imports: CodeGeneratorRequest_RequestedFile_Import[]; concreteLists: Array<[string, Field]>; generatedNodeIds: Set<string>; generatedResultsPromiseIds: Set<bigint>; tsPath: string; codeParts?: string[]; constructor: any; toString: () => string; } declare class CodeGeneratorContext { files: CodeGeneratorFileContext[]; } interface CapnpcCLIOptions { ts?: boolean; noTs?: boolean; js?: boolean; dts?: boolean; noDts?: boolean; schema: string; output?: string; importPath?: string[]; tsconfig: string; generateId?: boolean; standardImport?: boolean; projectRoot: string; workspaceRoot: string; tty?: boolean; } type CapnpcOptions = Omit<CapnpcCLIOptions, "noTs" | "noDts" | "tsconfig" | "schema"> & { tsconfig: ParsedCommandLine; schemas: string[]; }; interface CapnpcResult { ctx: CodeGeneratorContext; files: Map<string, string>; } export { type CapnpcCLIOptions, type CapnpcOptions, type CapnpcResult, CodeGeneratorContext, type CodeGeneratorFileContext };