/** * Specific boilerplate needed when compiling between specific languages. * Copyright (c) 2025 James Prevett */ /** * Boilerplate to make stuff with C work */ export declare const cToTypescriptHeader = "\n// auto-included compatibility types\nimport { types as t, struct, union, sizeof, Void, array } from 'memium';\nimport type { StructConstructor, Type, FieldConfigInit } from 'memium';\n\ntype int8 = number;\ntype uint8 = number;\ntype int16 = number;\ntype uint16 = number;\ntype int32 = number;\ntype uint32 = number;\ntype int64 = bigint;\ntype uint64 = bigint;\ntype int128 = bigint;\ntype uint128 = bigint;\ntype float32 = number;\ntype float64 = number;\ntype float128 = number;\n\ntype bool = boolean | number;\ntype Ref = bigint & { __ref__?: T };\ntype ConstArray = Array & { length: L } & Ref;\ntype $typeof = {};\n\ndeclare function $ref_t(t: FieldConfigInit): Type>;\n\ndeclare function $__typeof(value: T): $typeof;\ndeclare function $__ref(value: T): Ref;\ndeclare function $__deref(value: Ref): T;\ndeclare function $__array(start: Ref, i: bigint): T;\ndeclare function $__array(start: Ref, i: bigint, value?: T): void;\ndeclare function $__str(value: string): Ref;\ndeclare function $__allocConstArray(length: L, ...init: T[]): ConstArray;\n\ndeclare let __func__: Ref | undefined;\n// end of auto-included compatibility types\n";