import { QueryResult, SqlExpression, SqlQuery } from 'druid-query-toolkit'; import type { StoreApi } from 'zustand/vanilla'; import type { HostState, HostStorePersistOptions, RegisteredVisualModule, VisualModuleOverrides } from './host-store'; import type { ExpressionMeta } from './models'; import type { ParameterDefinitions } from './parameter'; import type { VisualModule } from './visual-module'; export interface SqlQueryPayload { query: string; resultFormat: 'array'; header: true; typesHeader: true; sqlTypesHeader: true; context: Record; } export interface Host { sqlQuery(query: string | SqlQuery, sqlQueryOptions?: unknown): Promise; updateColumns(columns: ExpressionMeta[]): void; updateWhere(where: string | SqlExpression): void; changeClauseInWhere(clause: string | SqlExpression): void; toggleClauseInWhere(clause: string | SqlExpression): void; updateTable(table: SqlExpression): void; updateHaving(having: string | SqlExpression): void; registerVisualModule

(name: string, module: VisualModule

, overrides?: VisualModuleOverrides

): void; unregisterVisualModule(name: string): void; getRegisteredVisualModules(): RegisteredVisualModule[]; readonly store: StoreApi; } export interface HostOptions { persist?: HostStorePersistOptions; sqlQuery: (payload: SqlQueryPayload) => Promise; table: SqlExpression; where?: string | SqlExpression; having?: string | SqlExpression; } export declare function Host(options: HostOptions): Host; //# sourceMappingURL=host.d.ts.map