/** * C# namespace resolution utilities */ import { DeukPackAST, DeukPackStruct, DeukPackEnum, DeukPackService, DeukPackTypedef, DeukPackConstant } from '../../types/DeukPackTypes'; export declare function getEnumNamespace(enumDef: DeukPackEnum, ast: DeukPackAST): string; export declare function getStructNamespace(struct: DeukPackStruct, ast: DeukPackAST): string; export declare function getTypedefNamespace(typedef: DeukPackTypedef, ast: DeukPackAST): string; export declare function getConstantNamespace(constant: DeukPackConstant, ast: DeukPackAST): string; export declare function getServiceNamespace(service: DeukPackService, ast: DeukPackAST): string; export declare function getStructFullName(struct: DeukPackStruct, ast: DeukPackAST): string; export declare function getEnumFullName(enumDef: DeukPackEnum, ast: DeukPackAST): string; export declare function getTypedefFullName(typedef: DeukPackTypedef, ast: DeukPackAST): string; export interface NamespaceGroup { enums: DeukPackEnum[]; structs: DeukPackStruct[]; typedefs: DeukPackTypedef[]; constants: DeukPackConstant[]; services: DeukPackService[]; } export declare function groupByNamespace(ast: DeukPackAST & { services?: DeukPackService[]; }): Record; export interface SourceFileGroup { enums: DeukPackEnum[]; structs: DeukPackStruct[]; typedefs: DeukPackTypedef[]; constants: DeukPackConstant[]; services: DeukPackService[]; } export declare function groupBySourceFile(ast: DeukPackAST): Record; export declare function resolveTypeToFullName(typeStr: string, currentNamespace: string | undefined, ast: DeukPackAST): string; //# sourceMappingURL=namespace.d.ts.map