import type { Printable } from "./protoplugin/ecmascript/index.js"; import { DescExtension, DescField } from "./descriptor-set.js"; export declare function unixMilliToDate(unixMilliseconds: bigint): Date; export declare function getFieldTypeInfo(field: DescField | DescExtension): { typing: Printable; optional: boolean; typingInferrableFromZeroValue: boolean; }; /** * Return a printable expression for the default value of a field. * Only applicable for singular scalar and enum fields. */ export declare function getFieldDefaultValueExpression(field: DescField | DescExtension, enumAs?: "enum_value_as_is" | "enum_value_as_integer" | "enum_value_as_cast_integer"): Printable | undefined; /** * Return a printable expression for the zero value of a field. * * Returns either: * - empty array literal for repeated fields * - Object.create(null) for maps * - undefined for message fields * - an enums first value * - scalar zero value */ export declare function getFieldZeroValueExpression(field: DescField | DescExtension, enumAs?: "enum_value_as_is" | "enum_value_as_integer" | "enum_value_as_cast_integer"): Printable | undefined;