objdiff/objdiff-core/wit/objdiff.wit

30 lines
628 B
Plaintext

package objdiff:core;
interface diff {
resource diff-config {
constructor();
set-property: func(id: string, value: string) -> result<_, string>;
get-property: func(id: string) -> result<string, string>;
}
resource object {
parse: static func(
data: list<u8>,
config: borrow<diff-config>,
) -> result<object, string>;
}
run-diff: func(
left: option<borrow<object>>,
right: option<borrow<object>>,
config: borrow<diff-config>,
) -> result<list<u8>, string>;
}
world api {
export diff;
export init: func() -> result<_, string>;
export version: func() -> string;
}