export declare class MetricFlowUnavailableError extends Error {
    constructor(message: string);
}
export interface MetricFlowQueryRequest {
    projectRoot: string;
    dbtProjectPath?: string;
    metrics: string[];
    dimensions: string[];
    timeDimension?: {
        name: string;
        granularity: string;
    };
    filters?: Array<{
        dimension?: string;
        operator?: string;
        values?: string[];
        expression?: string;
    }>;
    orderBy?: Array<{
        name: string;
        direction?: 'asc' | 'desc';
    }>;
    limit?: number;
    savedQuery?: string;
}
export interface MetricFlowCompileResult {
    sql: string;
    command: string[];
    stdout: string;
    stderr: string;
}
export declare function resolveDbtProjectRoot(projectRoot: string, configuredPath?: string): string;
export declare function hasDbtSemanticManifest(projectRoot: string, configuredPath?: string): boolean;
export declare function compileMetricFlowQuery(request: MetricFlowQueryRequest): MetricFlowCompileResult;
//# sourceMappingURL=metricflow.d.ts.map