import type { Query, QueryNode } from '../query'; export type TagValue = string | number | boolean | Query | QueryNode | TagStarValue; export declare enum TagSpecialValueType { star = 1200 } export interface TagStarValue { t: TagSpecialValueType.star; } export declare class QueryTag { t: 'tag'; attr: string; value: TagValue; isValueOptional: boolean; isAttrOptional: boolean; paramName: string; frozen: boolean; constructor(attr?: string, value?: TagValue); freeze(): void; hasValue(): boolean; hasStringValue(): boolean; isParameter(): boolean; isQuery(): boolean; isStar(): boolean; getQuery(): Query; getTaggedValue(): TagValue; getValue(): TagValue; getStringValue(): string; getNumberValue(): number; toQueryString(): string; }