export interface ECDbTestProps {
    fileName: string;
    title: string;
    only?: boolean;
    skip?: string;
    dataset?: string;
    mode: ECDbTestMode;
    rowFormat: ECDbTestRowFormat;
    abbreviateBlobs: boolean;
    convertClassIdsToClassNames: boolean;
    errorDuringPrepare?: boolean;
    indexesToIncludeInResults?: number[];
    stepStatus?: string;
    sql?: string;
    expectedResults?: {
        [key: string]: any;
    }[] | any[];
    columnInfo?: ColumnInfoProps[];
    binders?: ECDbTestBinderProps[];
}
export interface ECDbTestBinderProps {
    indexOrName: string;
    type: string;
    value: string;
}
export interface ColumnInfoProps {
    name: string;
    className?: string;
    accessString?: string;
    generated?: boolean;
    index?: number;
    jsonName?: string;
    extendedType?: string;
    type?: string;
    typeName?: string;
    originPropertyName?: string;
}
export declare const columnInfoPropsKeys: Set<keyof ColumnInfoProps>;
export declare enum ECDbTestMode {
    Both = "Both",
    Statement = "Statement",
    QueryReader = "QueryReader"
}
export declare enum ECDbTestRowFormat {
    ECSqlNames = "ECSqlNames",
    ECSqlIndexes = "ECSqlIndexes",
    JsNames = "JsNames"
}
export declare function buildBinaryData(obj: any): any;
export declare class ECDbMarkdownTestParser {
    static parse(): ECDbTestProps[];
    private static parseFile;
    private static handleListToken;
    private static handleMode;
    private static handleRowFormat;
    private static handleValidIndexList;
    private static handleCodeToken;
    private static handleJSONColumnMetadata;
    private static handleJSONExpectedResults;
    private static handleTableToken;
    private static handleTable;
    private static handleColumnTable;
    private static handleExpectedResultsTable;
    private static handleExpectedResultsTableForECSqlPropertyIndexesOption;
}
//# sourceMappingURL=ECSqlTestParser.d.ts.map