1 |
|
2 |
|
3 |
|
4 | import { IWord } from '../segment/types';
|
5 | import { IDictRow } from 'segment-dict/lib/loader/segment';
|
6 | export declare type IOptions = {
|
7 | autoCjk?: boolean;
|
8 | };
|
9 | export interface IDICT<T = any> {
|
10 | [key: string]: T;
|
11 | }
|
12 | export interface IDICT2<T = any> {
|
13 | [key: number]: IDICT<T>;
|
14 | }
|
15 | export interface ITableDictExistsTable<T> {
|
16 | TABLE?: IDICT<T>;
|
17 | TABLE2?: any | IDICT2<T>;
|
18 | }
|
19 | export declare abstract class AbstractTableDictCore<T> {
|
20 | static type: string;
|
21 | type: string;
|
22 | TABLE: IDICT<T>;
|
23 | TABLE2: any | IDICT2<T>;
|
24 | options: IOptions;
|
25 | constructor(type: string, options?: IOptions, existsTable?: ITableDictExistsTable<T>, ...argv: any[]);
|
26 | protected _exists<U extends IWord | IDictRow | string>(data: U, ...argv: any[]): any;
|
27 | exists<U extends IWord | IDictRow | string>(data: U, ...argv: any[]): T;
|
28 | abstract add(data: any, ...argv: any[]): this;
|
29 | protected abstract _add(data: any, ...argv: any[]): any;
|
30 | remove?(data: any, ...argv: any[]): this;
|
31 | protected _remove?(data: any, ...argv: any[]): any;
|
32 | json?(...argv: any[]): IDICT<T>;
|
33 | stringify?(...argv: any[]): string;
|
34 | size(): number;
|
35 | }
|
36 | export default AbstractTableDictCore;
|