UNPKG

@ngageoint/geopackage

Version:
79 lines (78 loc) 2.95 kB
/** * mediaTable module. * @module extension/relatedTables */ import { UserRelatedTable } from './userRelatedTable'; import { RelationType } from './relationType'; import { UserColumn } from '../../user/userColumn'; /** * Media Requirements Class User-Defined Related Data Table * @class * @extends UserRelatedTable * @param {string} tableName table name * @param {module:user/userColumn~UserColumn[]} columns media columns * @param {string[]} requiredColumns required column names */ export declare class MediaTable extends UserRelatedTable { static readonly RELATION_TYPE: RelationType; static readonly COLUMN_ID: string; static readonly COLUMN_DATA: string; static readonly COLUMN_CONTENT_TYPE: string; readonly TABLE_TYPE: string; constructor(tableName: string, columns?: UserColumn[], requiredColumns?: string[]); get tableType(): string; /** * Get the data column * @return {module:user/userColumn~UserColumn} */ get dataColumn(): UserColumn; /** * Get the content type column * @return {module:user/userColumn~UserColumn} */ get contentTypeColumn(): UserColumn; /** * Create a media table with a minimum required columns followed by the additional columns * @param {string} tableName name of the table * @param {module:user/userColumn~UserColumn[]} [additionalColumns] additional columns * @return {module:extension/relatedTables~MediaTable} */ static create(tableName: string, additionalColumns?: UserColumn[]): MediaTable; /** * Get the required columns * @param {string} [idColumnName=id] id column name * @return {string[]} */ static requiredColumns(idColumnName?: string): string[]; /** * Get the number of required columns * @return {Number} */ static numRequiredColumns(): number; /** * Create the required columns * @param {Number} [startingIndex=0] starting index of the required columns * @param {string} [idColumnName=id] id column name * @return {module:user/userColumn~UserColumn[]} */ static createRequiredColumns(startingIndex?: number, idColumnName?: string): UserColumn[]; /** * Create the primary key id column * @param {Number} index index of the column * @param {string} idColumnName name of the id column * @return {module:user/userColumn~UserColumn} */ static createIdColumn(index: number, idColumnName: string): UserColumn; /** * Create the data column * @param {Number} index index of the column * @return {module:user/userColumn~UserColumn} */ static createDataColumn(index: number): UserColumn; /** * Create the content type column * @param {Number} index index of the column * @return {module:user/userColumn~UserColumn} */ static createContentTypeColumn(index: number): UserColumn; }