// Copyright 2018-2024 the Deno authors. All rights reserved. MIT license. use std::cell::RefCell; use std::rc::Rc; use async_trait::async_trait; use deno_core::error::AnyError; use deno_core::OpState; use denokv_proto::Database; #[async_trait(?Send)] pub trait DatabaseHandler { type DB: Database + 'static; async fn open( &self, state: Rc>, path: Option, ) -> Result; }