@ngageoint/geopackage
Version:
GeoPackage JavaScript Library
71 lines (70 loc) • 2.26 kB
TypeScript
import { Dao } from '../../dao/dao';
import { RTreeIndex } from './rtreeIndex';
import { FeatureDao } from '../../features/user/featureDao';
import { GeoPackage } from '../../geoPackage';
import { FeatureRow } from '../../features/user/featureRow';
import { DBValue } from '../../db/dbAdapter';
/**
* RTree module.
*/
/**
* RTree Index Data Access Object
* @class
* @extends Dao
*/
export declare class RTreeIndexDao extends Dao<RTreeIndex> {
static readonly TABLE_NAME: string;
static readonly PREFIX: string;
static readonly COLUMN_TABLE_NAME: string;
static readonly COLUMN_GEOM_ID: string;
static readonly COLUMN_MIN_X: string;
static readonly COLUMN_MAX_X: string;
static readonly COLUMN_MIN_Y: string;
static readonly COLUMN_MAX_Y: string;
static readonly COLUMN_MIN_Z: string;
static readonly COLUMN_MAX_Z: string;
static readonly COLUMN_MIN_M: string;
static readonly COLUMN_MAX_M: string;
static readonly EXTENSION_NAME: string;
static readonly EXTENSION_RTREE_INDEX_AUTHOR: string;
static readonly EXTENSION_RTREE_INDEX_NAME_NO_AUTHOR: string;
static readonly EXTENSION_RTREE_INDEX_DEFINITION: string;
gpkgTableName: string;
featureDao: FeatureDao<FeatureRow>;
constructor(geoPackage: GeoPackage, featureDao: FeatureDao<FeatureRow>);
createObject(results?: Record<string, DBValue>): RTreeIndex;
/**
* Generate query components
* @param envelope
* @returns {{whereArgs: Array, where: string, join: string, tableNameArr: string[]}}
* @private
*/
_generateGeometryEnvelopeQuery(envelope: {
minX: number;
maxX: number;
minY: number;
maxY: number;
}): {
whereArgs: any[];
where: string;
join: string;
tableNameArr: string[];
};
/**
* Query witha geometry envelope
* @param {any} envelope envelope
* @return {IterableIterator<any>}
*/
queryWithGeometryEnvelope(envelope: {
minX: number;
maxX: number;
minY: number;
maxY: number;
}): IterableIterator<any>;
countWithGeometryEnvelope(envelope: {
minX: number;
maxX: number;
minY: number;
maxY: number;
}): number;
}