Public declaration syntax from harness-sdk/src/plugins/registry.rs Original source SHA-256: aa683d1e6c971d8151dd335f437b7966c9554a6869222a1f658ae6c9f479e0c5 Function bodies and constant values are omitted. This is not the complete implementation. Source line 19 #[derive(Debug, Clone, PartialEq, Eq, Serialize, Deserialize)] #[serde(tag = "type", rename_all = "snake_case")] pub enum PluginSource { /// A local filesystem path. Local { /// Path to the plugin directory or WASM file. path: String, }, /// A Git repository. Git { /// Git repository URL. url: String, /// Branch or tag (default: main). #[serde(default = "default_git_ref")] git_ref: String, /// Path within the repository. path: Option, }, /// A plugin index/registry. Index { /// Registry URL. url: String, /// Plugin name. name: String, /// Version constraint. version: Option, }, } Source line 53 #[must_use] pub fn local(path: impl Into) -> Self; Source line 59 #[must_use] pub fn git(url: impl Into) -> Self; Source line 69 #[must_use] pub fn index(url: impl Into, name: impl Into) -> Self; Source line 84 pub fn verify_wasm_hash(path: &str, expected_hash: &str) -> Result<(), PluginError>;