@visactor/vquery 0.2.3 → 0.2.6
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/browser/esm/adapters/index.d.ts +1 -0
- package/dist/browser/esm/adapters/query-adapter/duckdbNodeAdapter.d.ts +14 -0
- package/dist/browser/esm/adapters/query-adapter/duckdbWebAdapter.d.ts +14 -0
- package/dist/browser/esm/adapters/storage-adapter/index.d.ts +2 -0
- package/dist/{db/indexedDb.d.ts → browser/esm/adapters/storage-adapter/indexeddbAdapter.d.ts} +5 -5
- package/dist/browser/esm/adapters/storage-adapter/inmemoryAdapter.d.ts +22 -0
- package/dist/browser/esm/browser.d.ts +5 -0
- package/dist/{index.js → browser/esm/browser.js} +177 -176
- package/dist/{dataset → browser/esm/dataset}/dataset.d.ts +4 -5
- package/dist/{index.d.ts → browser/esm/node.d.ts} +1 -1
- package/dist/{sql-builder → browser/esm/sql-builder}/utils.d.ts +1 -1
- package/dist/browser/esm/types/adapters/QueryAdapter.d.ts +11 -0
- package/dist/browser/esm/types/adapters/StorageAdapter.d.ts +17 -0
- package/dist/browser/esm/types/adapters/index.d.ts +2 -0
- package/dist/{types/QueryDSL → browser/esm/types/dsl}/OrderBy.d.ts +1 -1
- package/dist/{types → browser/esm/types}/index.d.ts +2 -1
- package/dist/{vquery.d.ts → browser/esm/vquery-browser.d.ts} +4 -4
- package/dist/browser/esm/vquery-node.d.ts +21 -0
- package/dist/node/cjs/adapters/index.d.ts +1 -0
- package/dist/node/cjs/adapters/query-adapter/duckdbNodeAdapter.d.ts +14 -0
- package/dist/node/cjs/adapters/query-adapter/duckdbWebAdapter.d.ts +14 -0
- package/dist/node/cjs/adapters/storage-adapter/index.d.ts +2 -0
- package/dist/node/cjs/adapters/storage-adapter/indexeddbAdapter.d.ts +21 -0
- package/dist/node/cjs/adapters/storage-adapter/inmemoryAdapter.d.ts +22 -0
- package/dist/node/cjs/browser.d.ts +5 -0
- package/dist/node/cjs/data-source-builder/dataSourceBuilder.d.ts +16 -0
- package/dist/node/cjs/data-source-builder/index.d.ts +1 -0
- package/dist/node/cjs/dataset/dataset.d.ts +30 -0
- package/dist/node/cjs/dataset/index.d.ts +2 -0
- package/dist/{index.cjs → node/cjs/node.cjs} +134 -181
- package/dist/node/cjs/node.d.ts +5 -0
- package/dist/node/cjs/sql-builder/builders/groupBy.d.ts +2 -0
- package/dist/node/cjs/sql-builder/builders/index.d.ts +3 -0
- package/dist/node/cjs/sql-builder/builders/limit.d.ts +2 -0
- package/dist/node/cjs/sql-builder/builders/where.d.ts +3 -0
- package/dist/node/cjs/sql-builder/compile/index.d.ts +1 -0
- package/dist/node/cjs/sql-builder/compile/inlineParameters.d.ts +1 -0
- package/dist/node/cjs/sql-builder/dialect/index.d.ts +1 -0
- package/dist/node/cjs/sql-builder/dialect/postgresDialect.d.ts +11 -0
- package/dist/node/cjs/sql-builder/dslToSQL.d.ts +2 -0
- package/dist/node/cjs/sql-builder/index.d.ts +1 -0
- package/dist/node/cjs/sql-builder/utils.d.ts +8 -0
- package/dist/node/cjs/types/DataSet.d.ts +11 -0
- package/dist/node/cjs/types/DataSource.d.ts +11 -0
- package/dist/node/cjs/types/QueryResult.d.ts +1 -0
- package/dist/node/cjs/types/adapters/QueryAdapter.d.ts +11 -0
- package/dist/node/cjs/types/adapters/StorageAdapter.d.ts +17 -0
- package/dist/node/cjs/types/adapters/index.d.ts +2 -0
- package/dist/node/cjs/types/dsl/GroupBy.d.ts +1 -0
- package/dist/node/cjs/types/dsl/OrderBy.d.ts +4 -0
- package/dist/node/cjs/types/dsl/QueryDSL.d.ts +12 -0
- package/dist/node/cjs/types/dsl/Select.d.ts +7 -0
- package/dist/node/cjs/types/dsl/Where.d.ts +24 -0
- package/dist/node/cjs/types/dsl/demo.d.ts +1 -0
- package/dist/node/cjs/types/dsl/index.d.ts +5 -0
- package/dist/node/cjs/types/index.d.ts +5 -0
- package/dist/node/cjs/utils/index.d.ts +1 -0
- package/dist/node/cjs/utils/url.d.ts +3 -0
- package/dist/node/cjs/vquery-browser.d.ts +21 -0
- package/dist/node/cjs/vquery-node.d.ts +21 -0
- package/dist/node/esm/adapters/index.d.ts +1 -0
- package/dist/node/esm/adapters/query-adapter/duckdbNodeAdapter.d.ts +14 -0
- package/dist/node/esm/adapters/query-adapter/duckdbWebAdapter.d.ts +14 -0
- package/dist/node/esm/adapters/storage-adapter/index.d.ts +2 -0
- package/dist/node/esm/adapters/storage-adapter/indexeddbAdapter.d.ts +21 -0
- package/dist/node/esm/adapters/storage-adapter/inmemoryAdapter.d.ts +22 -0
- package/dist/node/esm/browser.d.ts +5 -0
- package/dist/node/esm/data-source-builder/dataSourceBuilder.d.ts +16 -0
- package/dist/node/esm/data-source-builder/index.d.ts +1 -0
- package/dist/node/esm/dataset/dataset.d.ts +30 -0
- package/dist/node/esm/dataset/index.d.ts +2 -0
- package/dist/node/esm/node.d.ts +5 -0
- package/dist/node/esm/node.js +476 -0
- package/dist/node/esm/sql-builder/builders/groupBy.d.ts +2 -0
- package/dist/node/esm/sql-builder/builders/index.d.ts +3 -0
- package/dist/node/esm/sql-builder/builders/limit.d.ts +2 -0
- package/dist/node/esm/sql-builder/builders/where.d.ts +3 -0
- package/dist/node/esm/sql-builder/compile/index.d.ts +1 -0
- package/dist/node/esm/sql-builder/compile/inlineParameters.d.ts +1 -0
- package/dist/node/esm/sql-builder/dialect/index.d.ts +1 -0
- package/dist/node/esm/sql-builder/dialect/postgresDialect.d.ts +11 -0
- package/dist/node/esm/sql-builder/dslToSQL.d.ts +2 -0
- package/dist/node/esm/sql-builder/index.d.ts +1 -0
- package/dist/node/esm/sql-builder/utils.d.ts +8 -0
- package/dist/node/esm/types/DataSet.d.ts +11 -0
- package/dist/node/esm/types/DataSource.d.ts +11 -0
- package/dist/node/esm/types/QueryResult.d.ts +1 -0
- package/dist/node/esm/types/adapters/QueryAdapter.d.ts +11 -0
- package/dist/node/esm/types/adapters/StorageAdapter.d.ts +17 -0
- package/dist/node/esm/types/adapters/index.d.ts +2 -0
- package/dist/node/esm/types/dsl/GroupBy.d.ts +1 -0
- package/dist/node/esm/types/dsl/OrderBy.d.ts +4 -0
- package/dist/node/esm/types/dsl/QueryDSL.d.ts +12 -0
- package/dist/node/esm/types/dsl/Select.d.ts +7 -0
- package/dist/node/esm/types/dsl/Where.d.ts +24 -0
- package/dist/node/esm/types/dsl/demo.d.ts +1 -0
- package/dist/node/esm/types/dsl/index.d.ts +5 -0
- package/dist/node/esm/types/index.d.ts +5 -0
- package/dist/node/esm/utils/index.d.ts +1 -0
- package/dist/node/esm/utils/url.d.ts +3 -0
- package/dist/node/esm/vquery-browser.d.ts +21 -0
- package/dist/node/esm/vquery-node.d.ts +21 -0
- package/package.json +28 -17
- package/dist/db/duckDb.d.ts +0 -35
- /package/dist/{data-source-builder → browser/esm/data-source-builder}/dataSourceBuilder.d.ts +0 -0
- /package/dist/{data-source-builder → browser/esm/data-source-builder}/index.d.ts +0 -0
- /package/dist/{dataset → browser/esm/dataset}/index.d.ts +0 -0
- /package/dist/{sql-builder → browser/esm/sql-builder}/builders/groupBy.d.ts +0 -0
- /package/dist/{sql-builder → browser/esm/sql-builder}/builders/index.d.ts +0 -0
- /package/dist/{sql-builder → browser/esm/sql-builder}/builders/limit.d.ts +0 -0
- /package/dist/{sql-builder → browser/esm/sql-builder}/builders/where.d.ts +0 -0
- /package/dist/{sql-builder → browser/esm/sql-builder}/compile/index.d.ts +0 -0
- /package/dist/{sql-builder → browser/esm/sql-builder}/compile/inlineParameters.d.ts +0 -0
- /package/dist/{sql-builder → browser/esm/sql-builder}/dialect/index.d.ts +0 -0
- /package/dist/{sql-builder → browser/esm/sql-builder}/dialect/postgresDialect.d.ts +0 -0
- /package/dist/{sql-builder → browser/esm/sql-builder}/dslToSQL.d.ts +0 -0
- /package/dist/{sql-builder → browser/esm/sql-builder}/index.d.ts +0 -0
- /package/dist/{types → browser/esm/types}/DataSet.d.ts +0 -0
- /package/dist/{types → browser/esm/types}/DataSource.d.ts +0 -0
- /package/dist/{types → browser/esm/types}/QueryResult.d.ts +0 -0
- /package/dist/{types/QueryDSL → browser/esm/types/dsl}/GroupBy.d.ts +0 -0
- /package/dist/{types/QueryDSL → browser/esm/types/dsl}/QueryDSL.d.ts +0 -0
- /package/dist/{types/QueryDSL → browser/esm/types/dsl}/Select.d.ts +0 -0
- /package/dist/{types/QueryDSL → browser/esm/types/dsl}/Where.d.ts +0 -0
- /package/dist/{types/QueryDSL → browser/esm/types/dsl}/demo.d.ts +0 -0
- /package/dist/{types/QueryDSL → browser/esm/types/dsl}/index.d.ts +0 -0
- /package/dist/{utils → browser/esm/utils}/index.d.ts +0 -0
- /package/dist/{utils → browser/esm/utils}/url.d.ts +0 -0
|
@@ -0,0 +1,11 @@
|
|
|
1
|
+
export type TidyDatum = Record<string, number | string | null | boolean | undefined>;
|
|
2
|
+
export type DatasetSourceType = 'csv' | 'json' | 'xlsx' | 'parquet';
|
|
3
|
+
export type DatasetSourceValue = string | ArrayBuffer | Blob | TidyDatum[];
|
|
4
|
+
export interface DatasetSource {
|
|
5
|
+
type: DatasetSourceType;
|
|
6
|
+
blob: Blob;
|
|
7
|
+
}
|
|
8
|
+
export interface RawDatasetSource {
|
|
9
|
+
type: DatasetSourceType;
|
|
10
|
+
rawDataset: DatasetSourceValue;
|
|
11
|
+
}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
export type QueryResult = any;
|
|
@@ -0,0 +1,11 @@
|
|
|
1
|
+
import { QueryResult } from '../QueryResult';
|
|
2
|
+
export interface QueryAdapter {
|
|
3
|
+
open: () => Promise<void>;
|
|
4
|
+
close: () => Promise<void>;
|
|
5
|
+
writeFile: <T extends Blob>(fileName: string, source: T) => Promise<void>;
|
|
6
|
+
getSchema: (fileName: string) => Promise<QueryResult>;
|
|
7
|
+
query: (sql: string) => Promise<{
|
|
8
|
+
dataset: any[];
|
|
9
|
+
table: any;
|
|
10
|
+
}>;
|
|
11
|
+
}
|
|
@@ -0,0 +1,17 @@
|
|
|
1
|
+
import { DatasetSchema } from '../DataSet';
|
|
2
|
+
import { DatasetSource } from '../DataSource';
|
|
3
|
+
export interface StorageAdapter {
|
|
4
|
+
open: () => Promise<void>;
|
|
5
|
+
close: () => Promise<void>;
|
|
6
|
+
writeDataset: (datasetId: string, datasetSchema: DatasetSchema, datasetSource?: DatasetSource) => Promise<void>;
|
|
7
|
+
readDataset: (datasetId: string) => Promise<{
|
|
8
|
+
datasetSchema: DatasetSchema;
|
|
9
|
+
datasetSource?: DatasetSource;
|
|
10
|
+
} | null>;
|
|
11
|
+
deleteDataset: (datasetId: string) => Promise<void>;
|
|
12
|
+
listDatasets: () => Promise<{
|
|
13
|
+
datasetId: string;
|
|
14
|
+
datasetSchema: DatasetSchema;
|
|
15
|
+
datasetSource?: DatasetSource;
|
|
16
|
+
}[]>;
|
|
17
|
+
}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
export type GroupBy<T> = Array<keyof T>;
|
|
@@ -0,0 +1,12 @@
|
|
|
1
|
+
import { GroupBy } from './GroupBy';
|
|
2
|
+
import { OrderBy } from './OrderBy';
|
|
3
|
+
import { Select } from './Select';
|
|
4
|
+
import { Where } from './Where';
|
|
5
|
+
export interface QueryDSL<Table> {
|
|
6
|
+
select: Select<Table>;
|
|
7
|
+
where?: Where<Table>;
|
|
8
|
+
groupBy?: GroupBy<Table>;
|
|
9
|
+
orderBy?: OrderBy<Table>;
|
|
10
|
+
limit?: number;
|
|
11
|
+
}
|
|
12
|
+
export type VQueryDSL<Table = Record<string, unknown>> = QueryDSL<Table>;
|
|
@@ -0,0 +1,24 @@
|
|
|
1
|
+
export type Where<T> = WhereGroup<T>;
|
|
2
|
+
export type WhereGroup<T> = {
|
|
3
|
+
op: 'and' | 'or';
|
|
4
|
+
conditions: Array<WhereClause<T>>;
|
|
5
|
+
};
|
|
6
|
+
export type WhereClause<T> = WhereLeaf<T> | WhereGroup<T>;
|
|
7
|
+
export type WhereLeaf<T> = {
|
|
8
|
+
[K in keyof T]: {
|
|
9
|
+
[O in Operator]: {
|
|
10
|
+
field: K;
|
|
11
|
+
op: O;
|
|
12
|
+
} & (O extends 'is null' | 'is not null' ? {
|
|
13
|
+
value?: never;
|
|
14
|
+
} : O extends 'in' | 'not in' ? {
|
|
15
|
+
value: T[K] | T[K][];
|
|
16
|
+
} : O extends 'between' | 'not between' ? {
|
|
17
|
+
value: [T[K], T[K]];
|
|
18
|
+
} : {
|
|
19
|
+
value: T[K];
|
|
20
|
+
});
|
|
21
|
+
}[Operator];
|
|
22
|
+
}[keyof T];
|
|
23
|
+
type Operator = '=' | '!=' | '>' | '>=' | '<' | '<=' | 'like' | 'not like' | 'ilike' | 'not ilike' | 'in' | 'not in' | 'between' | 'not between' | 'is null' | 'is not null';
|
|
24
|
+
export {};
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
export {};
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
export { isUrl, isHttpUrl, isBase64Url } from './url';
|
|
@@ -0,0 +1,21 @@
|
|
|
1
|
+
import { Dataset } from './dataset/dataset';
|
|
2
|
+
import { RawDatasetSource, DatasetColumn } from './types';
|
|
3
|
+
export declare class VQuery {
|
|
4
|
+
private queryAdapter;
|
|
5
|
+
private storageAdapter;
|
|
6
|
+
private isInitialized;
|
|
7
|
+
constructor();
|
|
8
|
+
private checkInitialized;
|
|
9
|
+
private checkDatasetExists;
|
|
10
|
+
createDataset(datasetId: string, columns?: DatasetColumn[], rawDatasetSource?: RawDatasetSource): Promise<void>;
|
|
11
|
+
updateDatasetSource(datasetId: string, columns?: DatasetColumn[], rawDatasetSource?: RawDatasetSource): Promise<void>;
|
|
12
|
+
dropDataset(datasetId: string): Promise<void>;
|
|
13
|
+
connectDataset(datasetId: string, temporaryColumns?: DatasetColumn[], temporaryRawDatasetSource?: RawDatasetSource): Promise<Dataset>;
|
|
14
|
+
hasDataset(datasetId: string): Promise<boolean>;
|
|
15
|
+
listDatasets(): Promise<{
|
|
16
|
+
datasetId: string;
|
|
17
|
+
datasetSchema: import("./types").DatasetSchema;
|
|
18
|
+
datasetSource?: import("./types").DatasetSource;
|
|
19
|
+
}[]>;
|
|
20
|
+
close(): Promise<void>;
|
|
21
|
+
}
|
|
@@ -0,0 +1,21 @@
|
|
|
1
|
+
import { Dataset } from './dataset/dataset';
|
|
2
|
+
import { RawDatasetSource, DatasetColumn } from './types';
|
|
3
|
+
export declare class VQuery {
|
|
4
|
+
private queryAdapter;
|
|
5
|
+
private storageAdapter;
|
|
6
|
+
private isInitialized;
|
|
7
|
+
constructor();
|
|
8
|
+
private checkInitialized;
|
|
9
|
+
private checkDatasetExists;
|
|
10
|
+
createDataset(datasetId: string, columns?: DatasetColumn[], rawDatasetSource?: RawDatasetSource): Promise<void>;
|
|
11
|
+
updateDatasetSource(datasetId: string, columns?: DatasetColumn[], rawDatasetSource?: RawDatasetSource): Promise<void>;
|
|
12
|
+
dropDataset(datasetId: string): Promise<void>;
|
|
13
|
+
connectDataset(datasetId: string, temporaryColumns?: DatasetColumn[], temporaryRawDatasetSource?: RawDatasetSource): Promise<Dataset>;
|
|
14
|
+
hasDataset(datasetId: string): Promise<boolean>;
|
|
15
|
+
listDatasets(): Promise<{
|
|
16
|
+
datasetId: string;
|
|
17
|
+
datasetSchema: import("./types").DatasetSchema;
|
|
18
|
+
datasetSource?: import("./types").DatasetSource;
|
|
19
|
+
}[]>;
|
|
20
|
+
close(): Promise<void>;
|
|
21
|
+
}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
export { IndexedDBAdapter, InMemoryAdapter } from './storage-adapter';
|
|
@@ -0,0 +1,14 @@
|
|
|
1
|
+
import { QueryAdapter } from '../../types';
|
|
2
|
+
export declare class DuckDBNodeQueryAdapter implements QueryAdapter {
|
|
3
|
+
private bindings;
|
|
4
|
+
private connection;
|
|
5
|
+
constructor();
|
|
6
|
+
open: () => Promise<void>;
|
|
7
|
+
close: () => Promise<void>;
|
|
8
|
+
writeFile: <T extends Blob>(fileName: string, source: T) => Promise<void>;
|
|
9
|
+
query: (sql: string) => Promise<{
|
|
10
|
+
dataset: any[];
|
|
11
|
+
table: any;
|
|
12
|
+
}>;
|
|
13
|
+
getSchema: (fileName: string) => Promise<any>;
|
|
14
|
+
}
|
|
@@ -0,0 +1,14 @@
|
|
|
1
|
+
import { QueryAdapter } from '../../types';
|
|
2
|
+
export declare class DuckDBWebQueryAdapter implements QueryAdapter {
|
|
3
|
+
private db;
|
|
4
|
+
private connection;
|
|
5
|
+
constructor();
|
|
6
|
+
open: () => Promise<void>;
|
|
7
|
+
close: () => Promise<void>;
|
|
8
|
+
writeFile: <T extends Blob>(fileName: string, source: T) => Promise<void>;
|
|
9
|
+
query: (sql: string) => Promise<{
|
|
10
|
+
dataset: any[];
|
|
11
|
+
table: any;
|
|
12
|
+
}>;
|
|
13
|
+
getSchema: (fileName: string) => Promise<any>;
|
|
14
|
+
}
|
|
@@ -0,0 +1,21 @@
|
|
|
1
|
+
import { DatasetSource, StorageAdapter } from '../../types';
|
|
2
|
+
import { DatasetSchema } from '../../types/DataSet';
|
|
3
|
+
export declare class IndexedDBAdapter implements StorageAdapter {
|
|
4
|
+
private db;
|
|
5
|
+
private dbName;
|
|
6
|
+
private datasetStoreName;
|
|
7
|
+
constructor(dbName?: string);
|
|
8
|
+
open: () => Promise<void>;
|
|
9
|
+
close: () => Promise<void>;
|
|
10
|
+
writeDataset: (datasetId: string, datasetSchema: DatasetSchema, datasetSource?: DatasetSource) => Promise<void>;
|
|
11
|
+
readDataset: (datasetId: string) => Promise<{
|
|
12
|
+
datasetSource?: DatasetSource;
|
|
13
|
+
datasetSchema: DatasetSchema;
|
|
14
|
+
} | null>;
|
|
15
|
+
deleteDataset: (datasetId: string) => Promise<void>;
|
|
16
|
+
listDatasets: () => Promise<{
|
|
17
|
+
datasetId: string;
|
|
18
|
+
dataSource?: DatasetSource;
|
|
19
|
+
datasetSchema: DatasetSchema;
|
|
20
|
+
}[]>;
|
|
21
|
+
}
|
|
@@ -0,0 +1,22 @@
|
|
|
1
|
+
import { DatasetSource, StorageAdapter } from '../../types';
|
|
2
|
+
import { DatasetSchema } from '../../types/DataSet';
|
|
3
|
+
type StoredDataset = {
|
|
4
|
+
datasetId: string;
|
|
5
|
+
datasetSchema: DatasetSchema;
|
|
6
|
+
datasetSource?: DatasetSource;
|
|
7
|
+
};
|
|
8
|
+
export declare class InMemoryAdapter implements StorageAdapter {
|
|
9
|
+
private datasets;
|
|
10
|
+
private isOpen;
|
|
11
|
+
constructor();
|
|
12
|
+
open: () => Promise<void>;
|
|
13
|
+
close: () => Promise<void>;
|
|
14
|
+
writeDataset: (datasetId: string, datasetSchema: DatasetSchema, datasetSource?: DatasetSource) => Promise<void>;
|
|
15
|
+
readDataset: (datasetId: string) => Promise<{
|
|
16
|
+
datasetSource?: DatasetSource;
|
|
17
|
+
datasetSchema: DatasetSchema;
|
|
18
|
+
} | null>;
|
|
19
|
+
deleteDataset: (datasetId: string) => Promise<void>;
|
|
20
|
+
listDatasets: () => Promise<StoredDataset[]>;
|
|
21
|
+
}
|
|
22
|
+
export {};
|
|
@@ -0,0 +1,16 @@
|
|
|
1
|
+
import { DatasetSourceType, RawDatasetSource } from '../types';
|
|
2
|
+
export declare class DatasetSourceBuilder {
|
|
3
|
+
private type;
|
|
4
|
+
private value;
|
|
5
|
+
constructor(raw: RawDatasetSource);
|
|
6
|
+
static from(raw: RawDatasetSource): DatasetSourceBuilder;
|
|
7
|
+
build(): Promise<{
|
|
8
|
+
type: DatasetSourceType;
|
|
9
|
+
blob: Blob;
|
|
10
|
+
}>;
|
|
11
|
+
/**
|
|
12
|
+
* 将不同类型的数据转换为Blob
|
|
13
|
+
*/
|
|
14
|
+
private static convertToBlob;
|
|
15
|
+
private static fetchBlob;
|
|
16
|
+
}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
export { DatasetSourceBuilder } from './dataSourceBuilder';
|
|
@@ -0,0 +1,30 @@
|
|
|
1
|
+
import { DatasetColumn, DatasetSource, QueryDSL } from '../types';
|
|
2
|
+
import { QueryAdapter, StorageAdapter } from '../types';
|
|
3
|
+
export declare class Dataset {
|
|
4
|
+
private queryAdapter;
|
|
5
|
+
private storageAdapter;
|
|
6
|
+
private _datasetId;
|
|
7
|
+
constructor(duckDB: QueryAdapter, indexedDB: StorageAdapter, datasetId: string);
|
|
8
|
+
init(temporaryColumns?: DatasetColumn[], temporaryDatasetSource?: DatasetSource): Promise<void>;
|
|
9
|
+
createOrReplaceView(columns: DatasetColumn[], datasetSource: DatasetSource): Promise<void>;
|
|
10
|
+
query<T extends Record<string, number | string>>(queryDSL: QueryDSL<T>): Promise<{
|
|
11
|
+
performance: {
|
|
12
|
+
startAt: string;
|
|
13
|
+
endAt: string;
|
|
14
|
+
duration: number;
|
|
15
|
+
};
|
|
16
|
+
dataset: any[];
|
|
17
|
+
table: any;
|
|
18
|
+
}>;
|
|
19
|
+
queryBySQL(sql: string): Promise<{
|
|
20
|
+
performance: {
|
|
21
|
+
startAt: string;
|
|
22
|
+
endAt: string;
|
|
23
|
+
duration: number;
|
|
24
|
+
};
|
|
25
|
+
dataset: any[];
|
|
26
|
+
table: any;
|
|
27
|
+
}>;
|
|
28
|
+
disconnect(): Promise<void>;
|
|
29
|
+
get datasetId(): string;
|
|
30
|
+
}
|