@eliseev_s/tolk-tlb-transpiler
Version:
Transpile Tolk structs to TLB definitions and generate TypeScript wrappers for TON blockchain smart contracts
37 lines • 1.2 kB
TypeScript
import { Node, Tree } from 'web-tree-sitter';
import type { TolkType, TolkStruct, TypeAliasInfo, TLBDefinition, GetMethod } from './types';
export declare class TolkASTProcessor {
private parser;
private structs;
private typeAliases;
private getMethods;
private constructor();
static initialize(): Promise<TolkASTProcessor>;
/**
* Convert Tolk source code directly to TLB definitions
*/
transpile(sourceCode: string): TLBDefinition[];
parse(sourceCode: string): Tree;
/**
* Get parsed get methods
*/
getGetMethods(): GetMethod[];
getStructs(): TolkStruct[];
getTypeAliases(): TypeAliasInfo[];
processAST(tree: Tree): TLBDefinition[];
private collectDefinitions;
private processStructDeclaration;
private processTypeAlias;
private extractPackPrefix;
private extractAnnotations;
private extractGenerics;
private extractStructFields;
resolveType(typeNode: Node): TolkType;
private processUnionType;
private flattenUnion;
private processTensorType;
private processTupleType;
private processGenericType;
private parseGenericParams;
}
//# sourceMappingURL=parser.d.ts.map