@ngageoint/geopackage
Version:
GeoPackage JavaScript Library
136 lines (135 loc) • 4.03 kB
TypeScript
/**
* @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;
}