WIT_CONTENT

Constant WIT_CONTENT 

Source
pub const WIT_CONTENT: &str = "package vtx:api@2.0.6;\n\ninterface sql {\n    variant db-value {\n        text(string),\n        integer(s64),\n        real(f64),\n        null-val,\n    }\n\n    execute: func(statement: string, params: list<db-value>) -> result<u64, string>;\n\n    query-json: func(statement: string, params: list<db-value>) -> result<string, string>;\n}\n\ninterface stream-io {\n    resource buffer {\n        size: func() -> u64;\n\n        read: func(offset: u64, max-bytes: u64) -> list<u8>;\n    }\n\n    open-file: func(uuid: string) -> result<buffer, string>;\n\n    create-memory-buffer: func(data: list<u8>) -> buffer;\n}\n\ninterface auth-types {\n    record user-context {\n        user-id: string,\n        username: string,\n        groups: list<string>,\n        metadata: string,\n    }\n}\n\ninterface types {\n    use stream-io.{buffer};\n    use auth-types.{user-context};\n\n    record http-request {\n        method: string,\n        path: string,\n        query: string,\n    }\n\n    record http-response {\n        status: u16,\n        body: option<buffer>,\n    }\n\n    record manifest {\n        id: string,\n        name: string,\n        version: string,\n        description: string,\n        entrypoint: string,\n    }\n}\n\nworld plugin {\n    use types.{http-request, http-response, manifest};\n    use auth-types.{user-context};\n\n    import stream-io;\n    import sql;\n\n    export handle: func(req: http-request) -> http-response;\n\n    export get-migrations: func() -> list<string>;\n\n    export get-manifest: func() -> manifest;\n\n    export get-resources: func() -> list<string>;\n\n    export authenticate: func(headers: list<tuple<string, string>>) -> result<user-context, u16>;\n}\n";