import * as _m0 from "protobufjs/minimal"; export declare const protobufPackage = "ast.base"; export interface U16Position { pos?: number | undefined; line?: number | undefined; column?: number | undefined; } export interface Range { start?: U16Position | undefined; end?: U16Position | undefined; } export interface Num { id?: string | undefined; value?: number | undefined; range?: Range | undefined; } export interface Bool { id?: string | undefined; value?: boolean | undefined; range?: Range | undefined; } export interface Str { id?: string | undefined; value?: string | undefined; range?: Range | undefined; } export declare const U16Position: { encode(message: U16Position, writer?: _m0.Writer): _m0.Writer; decode(input: _m0.Reader | Uint8Array, length?: number): U16Position; fromJSON(object: any): U16Position; toJSON(message: U16Position): unknown; create(base?: DeepPartial): U16Position; fromPartial(object: DeepPartial): U16Position; }; export declare const Range: { encode(message: Range, writer?: _m0.Writer): _m0.Writer; decode(input: _m0.Reader | Uint8Array, length?: number): Range; fromJSON(object: any): Range; toJSON(message: Range): unknown; create(base?: DeepPartial): Range; fromPartial(object: DeepPartial): Range; }; export declare const Num: { encode(message: Num, writer?: _m0.Writer): _m0.Writer; decode(input: _m0.Reader | Uint8Array, length?: number): Num; fromJSON(object: any): Num; toJSON(message: Num): unknown; create(base?: DeepPartial): Num; fromPartial(object: DeepPartial): Num; }; export declare const Bool: { encode(message: Bool, writer?: _m0.Writer): _m0.Writer; decode(input: _m0.Reader | Uint8Array, length?: number): Bool; fromJSON(object: any): Bool; toJSON(message: Bool): unknown; create(base?: DeepPartial): Bool; fromPartial(object: DeepPartial): Bool; }; export declare const Str: { encode(message: Str, writer?: _m0.Writer): _m0.Writer; decode(input: _m0.Reader | Uint8Array, length?: number): Str; fromJSON(object: any): Str; toJSON(message: Str): unknown; create(base?: DeepPartial): Str; fromPartial(object: DeepPartial): Str; }; type Builtin = Date | Function | Uint8Array | string | number | boolean | undefined; export type DeepPartial = T extends Builtin ? T : T extends globalThis.Array ? globalThis.Array> : T extends ReadonlyArray ? ReadonlyArray> : T extends {} ? { [K in keyof T]?: DeepPartial; } : Partial; export {};