use camino::Utf8PathBuf;
use iri_string::types::UriAbsoluteString;
use crate::vscode_sys;
pub mod change_editor_contents;
pub mod changed_filesystem_contents;
pub mod move_path;
pub mod open_text_editor;
pub mod open_workspace_folder;
pub mod request_file_decoration;
pub mod request_inline_credit;
pub mod request_tracked_contents;
pub mod update_resource_states;
#[derive(Debug)]
pub struct EditorContentsChange {
pub character_offset: u32,
pub characters_replaced: u32,
pub replacement_text: String,
}
pub enum Event {
OpenWorkspaceFolder {
workspace_uri: UriAbsoluteString,
},
OpenTextEditor {
uri: UriAbsoluteString,
text_editor: vscode_sys::reference::TextEditorRef,
},
ChangeEditorContents {
uri: UriAbsoluteString,
changes: Vec<EditorContentsChange>,
},
MovePath {
old_uri: UriAbsoluteString,
new_uri: UriAbsoluteString,
},
ChangedFilesystemContents {
uri: UriAbsoluteString,
},
RequestInlineCredit {
uri: UriAbsoluteString,
},
RequestTrackedContents {
uri: UriAbsoluteString,
deferred_promise: request_tracked_contents::DeferredPromise,
},
RequestFileDecoration {
uri: UriAbsoluteString,
deferred_promise: request_file_decoration::DeferredPromise,
},
UpdateResourceStates {
repository_path: Utf8PathBuf,
},
}