UNPKG

jsii-pacmak

Version:

A code generation framework for jsii backend languages

29 lines 1.32 kB
import { CodeMaker } from 'codemaker'; import { Type } from 'jsii-reflect'; import { ApiLocation } from 'jsii-rosetta'; import { SpecialDependencies } from '../dependencies'; import { EmitContext } from '../emit-context'; import { Package } from '../package'; import { ParameterValidator, StructValidator } from '../runtime/runtime-type-checking'; import { GoClass } from './class'; import { GoInterface } from './interface'; export declare abstract class GoType<T extends Type = Type> { readonly pkg: Package; readonly type: T; readonly name: string; readonly fqn: string; readonly proxyName: string; protected readonly apiLocation: ApiLocation; constructor(pkg: Package, type: T); get structValidator(): StructValidator | undefined; abstract get parameterValidators(): readonly ParameterValidator[]; abstract emit(context: EmitContext): void; abstract emitRegistration(context: EmitContext): void; abstract get dependencies(): Package[]; abstract get specialDependencies(): SpecialDependencies; get namespace(): string; emitDocs(context: EmitContext): void; protected emitStability(context: EmitContext): void; protected emitProxyMakerFunction(code: CodeMaker, bases: ReadonlyArray<GoClass | GoInterface>): void; } //# sourceMappingURL=go-type.d.ts.map