export interface TagOptions { attr?: string; value?: string | number | true; exprValue?: string[]; nativeValue?: any; star?: boolean; doubleStar?: boolean; starValue?: boolean; optional?: boolean; identifier?: string; } export default class TupleTag { attr?: string; value?: any; nativeValue?: any; exprValue?: string[]; star?: boolean; doubleStar?: boolean; starValue?: boolean; optional?: boolean; identifier?: string; constructor(opts: TagOptions); hasValue(): boolean; hasIdentifier(): boolean; valueToString(): string; str(): string; stringify(): string; copy(): TupleTag; setAttr(attr: string): TupleTag; setValue(value: string): TupleTag; setValueless(): TupleTag; setStarValue(): TupleTag; setNativeValue(v: any): TupleTag; setIdentifier(id: string): TupleTag; removeIdentifier(): TupleTag; setValueExpr(expr: string[]): TupleTag; compareCanonicalSort(rhs: TupleTag): number; equals(rhs: TupleTag): boolean; isUniqueExpr(): boolean; } export declare type FixedTag = TupleTag; export declare function newTag(attr: string, tagValue?: any): TupleTag; export declare function newSimpleTag(attr: string, tagValue?: any): TupleTag; export declare function newTagFromObject(obj: TagOptions): TupleTag; export declare function tagToString(tag: TupleTag): string;