/** * DomainDAO实现类 */ import { Domain } from '../models/Domain'; import { StorageAdapter } from '../interfaces/StorageAdapter'; import { DomainDAO } from '../interfaces/DomainDAO'; /** * DomainDAO的具体实现,通过数据库适配器与不同数据库交互 */ export declare class DomainDAOImpl implements DomainDAO { private adapter; private static readonly COLLECTION_NAME; /** * 构造函数 * @param adapter 存储适配器 */ constructor(adapter: StorageAdapter); /** * 初始化DAO */ initialize(): Promise; /** * 关闭DAO */ close(): Promise; /** * 创建域名记录 */ create(domain: Domain): Promise; /** * 根据ID获取域名 */ findById(id: string): Promise; /** * 根据名称获取域名 */ findByName(name: string): Promise; /** * 根据条件查询域名列表 */ find(query?: any, skip?: number, limit?: number, sort?: any, projection?: Record): Promise; /** * 更新域名 */ update(id: string, domain: Partial): Promise; /** * 删除域名 */ delete(id: string): Promise; /** * 批量创建域名 */ bulkCreate(domains: Domain[]): Promise; }