@junkawasaki/kawadb-orm
Version:
TypeScript ORM for KawaDB with KSQL support - works in Web and Electron environments
60 lines (59 loc) • 1.31 kB
TypeScript
/**
* データベーススキーマ管理
*/
import { TableMetadata } from '../types/EntityTypes';
export declare class Schema {
private tables;
/**
* テーブルを追加
*/
addTable(table: TableMetadata): void;
/**
* テーブルを取得
*/
getTable(name: string): TableMetadata | undefined;
/**
* 全テーブルを取得
*/
getAllTables(): TableMetadata[];
/**
* テーブルが存在するかチェック
*/
hasTable(name: string): boolean;
/**
* テーブルを削除
*/
dropTable(name: string): boolean;
/**
* CREATE TABLE SQLを生成
*/
generateCreateTableSQL(tableName: string): string;
/**
* カラム定義をフォーマット
*/
private formatColumnDefinition;
/**
* データ型をSQL型にマップ
*/
private mapDataTypeToSQL;
/**
* デフォルト値をフォーマット
*/
private formatDefaultValue;
/**
* スキーマをJSONに変換
*/
toJSON(): any;
/**
* JSONからスキーマを復元
*/
static fromJSON(json: any): Schema;
/**
* スキーマをクリア
*/
clear(): void;
/**
* スキーマの統計情報を取得
*/
getStats(): any;
}