import { Eno } from './Eno';
export { Batch, Tip, Sid, Nonce, Value, Formula, IEno, ISource, IField, II18n, IServerT, IClientT, IQueryResponse, IDimResult, IAttrResult, IQueryResult, ResponseHeaders, IHeaderValue };
type Batch = Eno[];
type Tip = string;
type Sid = string;
type Nonce = string;
type Value = string[];
type Formula = string;
interface IEno {
    tip: Tip;
    sid: Sid;
    serverT?: IServerT | null;
    clientT?: IClientT | null;
    source?: ISource;
}
interface ISource {
    deleted: boolean;
    type: Tip;
    security: Tip;
    parent?: Sid[];
    nonce: Nonce;
    field?: IField[];
}
interface IField {
    tip: Tip;
    value?: Value;
    i18n?: II18n[];
    formula?: Formula[];
}
interface II18n {
    lang: string;
    value?: Value;
}
interface IClientT {
    branch: Tip;
    sequence: number;
    createdDate: number;
    modifiedDate: number;
}
interface IServerT {
    branch: Tip;
    session: Tip;
    sequence: number;
    createdDate: number;
    modifiedDate: number;
    createdBy?: string;
    modifiedBy?: string;
    error?: Tip[];
}
interface IQueryResult {
    [dimensionValue: string]: {
        [label: string]: string;
    } | IQueryResult[];
}
interface IDimResult {
    tip?: string;
    label: string;
    values: string[];
}
interface IAttrResult {
    tip?: string;
    label: string;
    formula: string;
}
interface IQueryResponse {
    attributes: IAttrResult[];
    dimensions: IDimResult[];
    results: IQueryResult[];
    execTime: number;
    responseHeaders?: IHeaderValue[];
}
interface IHeaderValue {
    [header: string]: string;
}
type ResponseHeaders = string[] | IHeaderValue[];
