import { FieldSymbol } from "./field_symbol";
import { Table } from "./table";
import { ICharacter } from "./_character";
import { INumeric } from "./_numeric";
import { Hex } from "./hex";
import { Character } from "./character";
export declare class Structure {
    private readonly value;
    private readonly qualifiedName;
    private readonly ddicName;
    private readonly suffix;
    private readonly asInclude;
    constructor(fields: {
        [key: string]: any;
    }, qualifiedName?: string, ddicName?: string, suffix?: any, asInclude?: any);
    private linkGroupFields;
    clone(): Structure;
    clear(): this;
    getDDICName(): string | undefined;
    getRenamingSuffix(): {
        [key: string]: string;
    };
    getAsInclude(): {
        [key: string]: boolean;
    };
    getQualifiedName(): string | undefined;
    setField(name: string, value: any): this;
    set(input: Structure | string | INumeric | Table | ICharacter | FieldSymbol | undefined): this | undefined;
    private setCharacter;
    get(): {
        [key: string]: any;
    };
    getCharacter(allowObject?: boolean): string;
    getOffset(input: {
        offset?: number | INumeric | Hex;
        length?: number | INumeric | Hex;
    }): Character;
}
