import { IMetadataParam, Metadata, MetadataParamType } from '../../parser/types/metadata'; export declare function getTuplePropertyName(tupleItemIndex: number): string; export declare function getTupleStructName(parent: Metadata): string; export declare function getMetadataParamTypeName(param: MetadataParamType): string; export declare function getOptionalStructName(parent: Metadata, metadataParamType: MetadataParamType): string; export declare function getOptionalStructTypeReference(parent: Metadata, metadataParamType: MetadataParamType): string; export declare function getTupleStructTypeReference(parent: Metadata): string; export declare function getTraitUnionNodePropertyName(traitNode: Metadata): string; export declare function jsbTypeToCodecSuffix(value: string): string; export declare function metadataToRelativePath(metadata: Metadata): string; export declare function getHeaderGuard(value: string): string; export declare class RegularExpressions { static readonly literalTraceArgument: RegExp; } export declare function JSB_TRACE(name: string, ...args: string[]): string; export declare function getTraitUnionName(metadata: Metadata): string; export declare function getTraitUnionCompleteTypeReference(metadata: Metadata): string; export declare function metadataGlobalNameToNamespace(metadata: Metadata, limit?: number | null): string; export declare function getMetadataCompleteTypeReference(metadata: Metadata): string; export declare function getMetadataName(metadata: Metadata): string; export declare function getMetadataPrefix(metadata: Metadata): string; export declare function getInitOptionalParameterFunctionName(metadata: Metadata, param: IMetadataParam): string; /** * If `key` is prefixed with a asterisk, it will be removed. Otherwise, it will be prefixed with an ampersand. * * **Example:** * * ```typescript * pointer('key') // Returns "&key" * pointer('*key') // Returns "key" * ``` * @param key Key to be transformed into a pointer * @returns Returns a pointer to the `key` */ export declare function pointer(key: string): string; /** * If `key` is prefixed with an ampersand, it will be removed. Otherwise, it will be prefixed with an asterisk. * @param key Key to be dereferenced * @returns Returns a dereferenced key * @example dereference('key') // Returns "*key" * @example dereference('&key') // Returns "key" * @example dereference('*key') // Returns "*key" */ export declare function dereference(key: string): string; //# sourceMappingURL=utilities.d.ts.map