import { CandlestickAggregateOptions, TimeRange, WhereClause } from '@timescaledb/schemas';
export declare class CandlestickAggregateBuilder {
    private statements;
    private options;
    private tableName;
    constructor(tableName: string, options: CandlestickAggregateOptions);
    private buildWhere;
    build({ where, range }?: {
        where?: WhereClause;
        range?: TimeRange;
    }): {
        sql: string;
        params: any[];
    };
}
export interface CandlestickMetadata {
    propertyName: string;
    timeColumn?: string;
    priceColumn?: string;
    volumeColumn?: string;
    sourceColumn?: string;
}
export declare class CandlestickBuilder {
    static generateSQL(metadata: CandlestickMetadata, isRollup?: boolean): string;
}
