///
import events = require("events");
import cache = require("./cache");
import connection = require("./connection");
import model = require("./model");
import { Callback } from "./define";
export interface ManagerOptions extends cache.CacheOptions, connection.ConnectionOptions {
}
export declare class Manager extends events.EventEmitter {
readonly cache: cache.Cache;
readonly connection: connection.Connection;
private readonly _models;
/**
* 创建 Manager
*/
constructor(options: ManagerOptions);
/**
* 注册 model
* @param name Model 名称
* @param options 选项
*/
registerModel(name: string, options: model.ModelBaseOptions): void;
/**
* 判断 model 是否存在
* @param name Model 名称
*/
hasModel(name: string): boolean;
/**
* 获取 model
* @param name Model 名称
*/
model(name: string): model.Model | undefined;
/**
* 关闭
* @param callback 回调函数
*/
close(callback?: Callback): Promise | void;
}