UNPKG

@ngageoint/geopackage

Version:
136 lines (135 loc) 4.03 kB
/** * @module extension/contents */ import { BaseExtension } from '../baseExtension'; import { GeoPackage } from '../../geoPackage'; import { Extension } from '../extension'; import { ContentsIdDao } from './contentsIdDao'; import { Contents } from '../../core/contents/contents'; import { ContentsId } from './contentsId'; /** * Style extension */ export declare class ContentsIdExtension extends BaseExtension { static readonly EXTENSION_NAME: string; static readonly EXTENSION_AUTHOR: string; static readonly EXTENSION_NAME_NO_AUTHOR: string; static readonly EXTENSION_DEFINITION: string; contentsIdDao: ContentsIdDao; constructor(geoPackage: GeoPackage); /** * Get or create the contents id extension * @return {Promise} */ getOrCreateExtension(): Extension; /** * Get the ContentsIdDao * @returns {module:extension/contents.ContentsIdDao} */ get dao(): ContentsIdDao; has(): boolean; /** * Get the ContentsId object * @param contents {module:core/contents.Contents} * @returns {module:extension/contents.ContentsId} */ get(contents: Contents): ContentsId; /** * Get the ContentsId object * @param tableName * @returns {module:extension/contents.ContentsId} */ getByTableName(tableName: string): ContentsId; /** * Get the ContentsId id * @param contents {module:core/contents.Contents} * @returns {Number} */ getId(contents: Contents): number; /** * Get the ContentsId id * @param tableName * @returns {Number} */ getIdByTableName(tableName: string): number; /** * Creates contentsId for contents * @param contents {module:core/contents.Contents} * @returns {module:extension/contents.ContentsId} */ create(contents: Contents): ContentsId; /** * Creates contentsId for contents * @param tableName * @returns {module:extension/contents.ContentsId} */ createWithTableName(tableName: string): ContentsId; /** * Creates contentsId for contents * @param contents {module:core/contents.Contents} * @returns {module:extension/contents.ContentsId} */ createId(contents: Contents): ContentsId; /** * Creates contentsId for contents * @param tableName {string} * @returns {module:extension/contents.ContentsId} */ createIdWithTableName(tableName: string): ContentsId; /** * Gets or creates contentsId for contents * @param contents {module:core/contents.Contents} * @returns {module:extension/contents.ContentsId} */ getOrCreateId(contents: Contents): ContentsId; /** * Gets or creates contentsId for table name * @param tableName {string} * @returns {module:extension/contents.ContentsId} */ getOrCreateIdByTableName(tableName: string): ContentsId; /** * Deletes contentsId for contents * @param contents {module:core/contents.Contents} */ deleteId(contents: Contents): number; /** * Deletes contentId for table name * @param tableName {string} */ deleteIdByTableName(tableName: string): number; /** * Number of contentsIds * @returns {number} */ count(): number; /** * Create contentsIds for contents of type passed in * @param type defaults to "" * @returns {number} */ createIds(type?: string): number; /** * Deletes ids by type * @param type * @returns {number} */ deleteIds(type?: string): number; getIdsByType(type?: string): ContentsId[]; /** * @typedef ContentsTableName * @type {Object} * @property {string} table_name the table name * * Get contents without contents ids * @param type * @returns {ContentsTableName[]} contentsTableNames */ getMissing(type?: string): { table_name: string; }[]; /** * Remove contents id extension */ removeExtension(): void; }