import * as Knex from 'knex'; import { MapDataType, PartialBy } from './data_types'; import { AbstractCrudModel, Data } from './abstract_crud'; declare const topicColumns: { readonly id: "topic_id"; readonly name: "topic"; readonly type: "topic_type"; readonly authorityList: "auth_list"; readonly classification: "classification"; readonly created: "input_date"; readonly updated: "last_update"; }; export declare enum TopicType { TOPIC = 0, GEOGRAPHIC = 1, NAME = 2, TEMPORAL = 3, GENRE = 4, OCCUPATION = 5 } declare type RawTopicType = 't' | 'g' | 'n' | 'tm' | 'gr' | 'oc'; export declare type TopicData = Data & { name: string; type?: TopicType; authorityList?: string; classification?: string; }; declare type TableOverride = { topic_id: number; topic_type: RawTopicType; classification: string; }; declare type RawTopicData = MapDataType; export declare class Topic extends AbstractCrudModel { constructor(db: Knex); protected toPartialRaw(data: Partial): Promise<{ topic_id: number | undefined; topic: string | undefined; topic_type: "g" | "t" | "n" | "tm" | "gr" | "oc" | undefined; auth_list: string | undefined; classification: string | undefined; }>; protected toRaw(data: PartialBy): Promise, "topic_id">>; protected toData(data: RawTopicData): Promise<{ id: number; name: string; type: TopicType; authorityList: string | undefined; classification: string; created: Date | undefined; updated: Date | undefined; }>; } export {};