pub fn open_surface(
    ops: BstOptions,
    id: BstWindowID,
    instance: Arc<Instance>,
    result_fn: Box<dyn Fn(Result<Arc<Surface<Arc<dyn BasaltWindow>>>, String>) + Send + Sync>
)