UNPKG

@ngageoint/geopackage

Version:
76 lines (75 loc) 2.93 kB
import { Extension } from './extension'; import { Dao } from '../dao/dao'; import { DBValue } from '../db/dbAdapter'; /** * Extension Data Access Object * @class * @extends Dao */ export declare class ExtensionDao extends Dao<Extension> { static readonly TABLE_NAME: string; static readonly COLUMN_TABLE_NAME: string; static readonly COLUMN_COLUMN_NAME: string; static readonly COLUMN_EXTENSION_NAME: string; static readonly COLUMN_DEFINITION: string; static readonly COLUMN_SCOPE: string; readonly gpkgTableName: string; readonly idColumns: string[]; /** * Creates an Extension object from the raw database row * @param {object} row raw database row * @returns {Extension} */ createObject(row: Record<string, DBValue>): Extension; /** * Query by extension name and return the first result * @param {String} extensionName extension name * @returns {Extension} */ queryByExtension(extensionName: string): Extension; /** * Query by extension name and return all results * @param {String} extensionName extension name * @returns {Extension[]} */ queryAllByExtension(extensionName: string): Extension[]; /** * Query by extension name and table name and return all results * @param {String} extensionName extension name * @param {String} tableName table name * @returns {Extension[]} */ queryByExtensionAndTableName(extensionName: string, tableName: string): Extension[]; /** * Query by extension name and table name and return all results * @param {String} extensionName extension name * @param {String} tableName table name * @param {String} columnName column name * @returns {Extension[]} */ queryByExtensionAndTableNameAndColumnName(extensionName: string, tableName: string, columnName: string): Extension[]; /** * Creates the extensions table */ createTable(): boolean; /** * Deletes all extension entries with this name * @param {String} extensionName extension name to delete * @returns {Number} Number of extensions deleted */ deleteByExtension(extensionName: string): number; /** * Deletes all extension entries with this name and table name * @param {String} extensionName extension name to delete * @param {String} tableName table name to delete * @returns {Number} Number of extensions deleted */ deleteByExtensionAndTableName(extensionName: string, tableName: string): number; /** * Deletes all extension entries with this name and table name * @param {String} extensionName extension name to delete * @param {String} tableName table name to delete * @returns {Number} Number of extensions deleted */ deleteByExtensionAndTableNameAndColumnName(extensionName: string, tableName: string, columnName: string): number; }