diff --git a/.devcontainer/Dockerfile b/.devcontainer/Dockerfile new file mode 100644 index 0000000..f95ac7f --- /dev/null +++ b/.devcontainer/Dockerfile @@ -0,0 +1,26 @@ +FROM mcr.microsoft.com/devcontainers/typescript-node:0-16-bullseye +ARG GOLANG_VERSION=1.18.6 +ARG GOLANG_PACKAGE=https://go.dev/dl/go${GOLANG_VERSION}.linux-amd64.tar.gz +ARG GRPC_VERSION=v1.48.2 +ARG PROTOC_GEN_GO_VERSION=v1.28.1 +ARG PROTOC_GEN_GO_GRPC_VERSION=v1.1.0 + +# Install python and build tools from apt +RUN apt-get update && apt-get install -y cmake git build-essential python3-venv python3-pip python-is-python3 wget && rm -rf /var/lib/apt/lists/* + +# Install golang from binary package +RUN rm -rf /go && wget ${GOLANG_PACKAGE} -qO- | tar -C / -xz +ENV GOPATH=/go +ENV PATH $GOPATH/bin:$PATH +RUN mkdir -p "$GOPATH/src" "$GOPATH/bin" && chmod -R 777 "$GOPATH" +RUN mkdir -p /build + +# Build GRPC; note this issue before updating: https://github.com/protocolbuffers/protobuf-javascript/issues/127 +WORKDIR /build +RUN git clone --recurse-submodules -b ${GRPC_VERSION} --depth 1 --shallow-submodules https://github.com/grpc/grpc +WORKDIR /build/grpc +RUN mkdir -p cmake/build; cd cmake/build; cmake -DgRPC_INSTALL=ON -DgRPC_BUILD_TESTS=OFF -DCMAKE_INSTALL_PREFIX=/usr/local ../.. && make -j 8 && make install + +# Build api-interfaces +RUN go install google.golang.org/protobuf/cmd/protoc-gen-go@${PROTOC_GEN_GO_VERSION} +RUN go install google.golang.org/grpc/cmd/protoc-gen-go-grpc@${PROTOC_GEN_GO_GRPC_VERSION} \ No newline at end of file diff --git a/.devcontainer/devcontainer.json b/.devcontainer/devcontainer.json new file mode 100644 index 0000000..5da0215 --- /dev/null +++ b/.devcontainer/devcontainer.json @@ -0,0 +1,24 @@ +// For format details, see https://aka.ms/devcontainer.json. For config options, see the +// README at: https://github.com/devcontainers/templates/tree/main/src/typescript-node +{ + "name": "Node.js & TypeScript", + // Or use a Dockerfile or Docker Compose file. More info: https://containers.dev/guide/dockerfile + "build": { + "dockerfile": "Dockerfile", + } + + // Features to add to the dev container. More info: https://containers.dev/features. + // "features": {}, + + // Use 'forwardPorts' to make a list of ports inside the container available locally. + // "forwardPorts": [], + + // Use 'postCreateCommand' to run commands after the container is created. + // "postCreateCommand": "yarn install", + + // Configure tool-specific properties. + // "customizations": {}, + + // Uncomment to connect as root instead. More info: https://aka.ms/dev-containers-non-root. + // "remoteUser": "root" +} diff --git a/.gitignore b/.gitignore index e39191d..91a0896 100644 --- a/.gitignore +++ b/.gitignore @@ -18,4 +18,5 @@ node_modules .idea pybuild/ -.history/ \ No newline at end of file +.history/ +dist/ \ No newline at end of file diff --git a/.gitmodules b/.gitmodules index 5bd82e9..e69de29 100644 --- a/.gitmodules +++ b/.gitmodules @@ -1,3 +0,0 @@ -[submodule "src/tensorizer"] - path = src/tensorizer - url = https://github.com/coreweave/tensorizer.git diff --git a/README.md b/README.md index 9c6b56b..3490a3c 100644 --- a/README.md +++ b/README.md @@ -1,108 +1,10 @@ -## 📝 Table of Contents +# TESTING - DO NOT USE +This branch is a work in progress; it is not expected to work with our production APIs at this time. -- [About](#about) -- [Getting Started](#getting_started) -- [Usage](#usage) +## Generating protobuf stubs -## About - -Api-Interfaces is the gRPC protocol for communication between the -[api-bridge](https://github.com/Stability-AI/api-bridge), the [api-web](https://github.com/Stability-AI/api-web), -and the [generator_server](https://github.com/Stability-AI/generator_server). Additionally, any -other client application communicating directly with `api-web` also use the interfaces generated -from this repository. - -See [here](https://www.notion.so/stabilityai/Protocol-Buffer-Development-Guidelines-94c6a5b9082d4aa6a2d6bf50b86fe0ac) for some development guides. - -## Getting Started - -These instructions will get you an environment setup to build the interface files from the proto source files. - -### Prerequisites - -The following items are needed to develop api-interfaces: -- [golang](https://go.dev/) >= 1.18 -- [nodejs](https://nodejs.org/en/) >= 16.16.0 -- [cmake](https://cmake.org/) >= 3.14 -- [protoc](https://github.com/protocolbuffers/protobuf#protocol-compiler-installation) -- [grpc](https://grpc.io/) - -It is recommended to use ssh cloning with this project for `git` and for `go get`, although `https` -does appear to work. To force ssh (for github) put the following in your `.gitconfig`: - -```ini -[url "ssh://git@github.com/"] - insteadOf = https://github.com/ ``` - -### Setup and building - -After all the prerequisites are installed and available, this project can be setup by the following: - -```shell -git clone --recurse-submodules git@github.com:Stability-AI/api-interfaces.git -cd api-interfaces -cmake . -cmake --build . -``` - -This will produce files for the various languages in [gooseai](./gooseai) to support the proto -files in [src](./src). *When rebuilding the files it is recommended to do a clean before as there -have been instances of not all files being regenerated without it.* - -## 🎈 Usage - -The generated files are all output in [gooseai](./gooseai). How to use these files depends on the -programming language being used. The following sections provide details for each of the supported -languages. - -The files have different usages and not all are required depending on the situation: -| Suffix | Client | Server | -|-------------|--------|--------| -| _grpc_pb | ✔️1 | ✔️ | -| _pb_service | ✔️2 | | -| _pb | ✔️ | ✔️ | - - -1. Not needed for typescript/javascript clients. -2. Only needed for typscript/javascripts clients. - - -### Golang - -For Golang the interfaces can be added to the project as a normal module require. To add them run: - -```shell -go get github.com/Stability-AI/api-interfaces@latest +npm i --dev +npm run generate ``` -Similarly to update them just run the same command with the short sha of the version to update to. -Use them as you would a normal module. - -### Python - -With the current output, the best way to consume these is to add them as a git submodule to your -project. It is recommended to use ssh clone when adding the submodule. To update them just -checkout the newer version from within the submodule (and remember to commit the submodule change -to your project). - -To use them make sure the files are on the python path. - - -### Typescript / Javascript - -With the current output, the best way to consume these is to add them as a git submodule to your -project. It is recommended to use ssh clone when adding the submodule. To update them just -checkout the newer version from within the submodule (and remember to commit the submodule change -to your project). - -To use them make sure they are in a location that can be found by your typescript/javascript files. - -*NOTE: Typescript requires both the typescript and javascript files to be available.* - -### Other Languages / Custom Build - -If not using the CMake defined builds to generate make sure when building from the source proto -files that the following proto include paths are set: -- `src/proto` -- `src/tensorizer/proto` diff --git a/buf.gen.go.yaml b/buf.gen.go.yaml new file mode 100644 index 0000000..4a15528 --- /dev/null +++ b/buf.gen.go.yaml @@ -0,0 +1,23 @@ +version: v1 +managed: + enabled: true + go_package_prefix: + # : name in go.mod + # : where generated code should be output + default: github.com/stability-ai/api-interfaces/src + # Remove `except` field if googleapis is not used + except: + - buf.build/googleapis/googleapis +plugins: + - plugin: buf.build/connectrpc/go:v1.11.0 + out: '.' + opt: + - paths=source_relative + - plugin: buf.build/grpc/go:v1.3.0 + out: '.' + opt: + - paths=source_relative + - plugin: buf.build/protocolbuffers/go + out: '.' + opt: + - paths=source_relative \ No newline at end of file diff --git a/buf.gen.js.yaml b/buf.gen.js.yaml new file mode 100644 index 0000000..c4705a1 --- /dev/null +++ b/buf.gen.js.yaml @@ -0,0 +1,8 @@ +version: v1 +managed: + enabled: true +plugins: + - plugin: buf.build/bufbuild/connect-es:v0.12.0 + out: '.' + - plugin: buf.build/bufbuild/es + out: '.' \ No newline at end of file diff --git a/buf.gen.kt.yaml b/buf.gen.kt.yaml new file mode 100644 index 0000000..ae01163 --- /dev/null +++ b/buf.gen.kt.yaml @@ -0,0 +1,8 @@ +version: v1 +managed: + enabled: true +plugins: + - plugin: buf.build/bufbuild/connect-kotlin:v0.1.7 + out: '.' + - plugin: buf.build/protocolbuffers/kotlin + out: '.' diff --git a/buf.gen.py.yaml b/buf.gen.py.yaml new file mode 100644 index 0000000..72a06e7 --- /dev/null +++ b/buf.gen.py.yaml @@ -0,0 +1,10 @@ +version: v1 +managed: + enabled: true +plugins: + - plugin: buf.build/grpc/python:v1.56.2 + out: '.' + - plugin: buf.build/protocolbuffers/python + out: '.' + - plugin: buf.build/protocolbuffers/pyi:v23.4 + out: '.' diff --git a/buf.gen.swift.yaml b/buf.gen.swift.yaml new file mode 100644 index 0000000..eff9fd2 --- /dev/null +++ b/buf.gen.swift.yaml @@ -0,0 +1,8 @@ +version: v1 +managed: + enabled: true +plugins: + - plugin: buf.build/bufbuild/connect-swift:v0.5.0 + out: '.' + - plugin: buf.build/apple/swift + out: '.' \ No newline at end of file diff --git a/buf.work.yaml b/buf.work.yaml index 924d331..f62e33c 100644 --- a/buf.work.yaml +++ b/buf.work.yaml @@ -1,4 +1,3 @@ version: v1 directories: - src/proto - - src/tensorizer/proto diff --git a/buf.yaml b/buf.yaml index 31d0c5d..5f5221e 100644 --- a/buf.yaml +++ b/buf.yaml @@ -1,4 +1,5 @@ version: v1 +name: buf.build/stability-ai/api-interfaces breaking: use: - FILE @@ -6,3 +7,6 @@ build: excludes: - node_modules - build +lint: + use: + - DEFAULT diff --git a/gooseai/README.md b/gooseai/README.md new file mode 100644 index 0000000..9254e49 --- /dev/null +++ b/gooseai/README.md @@ -0,0 +1,3 @@ +# Legacy "gooseai" inferfaces + +These are the original interfaces used by the Stability API. While the underlying contracts remain compatible, the `gen/proto` path contains new, improved codegen built with `buf`. \ No newline at end of file diff --git a/package-lock.json b/package-lock.json index 5c0aaed..09ba0dd 100644 --- a/package-lock.json +++ b/package-lock.json @@ -1,1011 +1,192 @@ { - "name": "api-interfaces", + "name": "stability_api", "version": "0.1.0", "lockfileVersion": 2, "requires": true, "packages": { "": { - "name": "api-interfaces", + "name": "stability_api", "version": "0.1.0", - "dependencies": { - "grpc-tools": "^1.11.2", - "ts-protoc-gen": "^0.15.0" + "devDependencies": { + "@bufbuild/buf": "^1.18.0-1" } }, - "node_modules/@mapbox/node-pre-gyp": { - "version": "1.0.9", - "resolved": "https://registry.npmjs.org/@mapbox/node-pre-gyp/-/node-pre-gyp-1.0.9.tgz", - "integrity": "sha512-aDF3S3rK9Q2gey/WAttUlISduDItz5BU3306M9Eyv6/oS40aMprnopshtlKTykxRNIBEZuRMaZAnbrQ4QtKGyw==", - "dependencies": { - "detect-libc": "^2.0.0", - "https-proxy-agent": "^5.0.0", - "make-dir": "^3.1.0", - "node-fetch": "^2.6.7", - "nopt": "^5.0.0", - "npmlog": "^5.0.1", - "rimraf": "^3.0.2", - "semver": "^7.3.5", - "tar": "^6.1.11" - }, - "bin": { - "node-pre-gyp": "bin/node-pre-gyp" - } - }, - "node_modules/abbrev": { - "version": "1.1.1", - "resolved": "https://registry.npmjs.org/abbrev/-/abbrev-1.1.1.tgz", - "integrity": "sha512-nne9/IiQ/hzIhY6pdDnbBtz7DjPTKrY00P/zvPSm5pOFkl6xuGrGnXn/VtTNNfNtAfZ9/1RtehkszU9qcTii0Q==" - }, - "node_modules/agent-base": { - "version": "6.0.2", - "resolved": "https://registry.npmjs.org/agent-base/-/agent-base-6.0.2.tgz", - "integrity": "sha512-RZNwNclF7+MS/8bDg70amg32dyeZGZxiDuQmZxKLAlQjr3jGyLx+4Kkk58UO7D2QdgFIQCovuSuZESne6RG6XQ==", - "dependencies": { - "debug": "4" - }, - "engines": { - "node": ">= 6.0.0" - } - }, - "node_modules/ansi-regex": { - "version": "5.0.1", - "resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-5.0.1.tgz", - "integrity": "sha512-quJQXlTSUGL2LH9SUXo8VwsY4soanhgo6LNSm84E1LBcE8s3O0wpdiRzyR9z/ZZJMlMWv37qOOb9pdJlMUEKFQ==", - "engines": { - "node": ">=8" - } - }, - "node_modules/aproba": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/aproba/-/aproba-2.0.0.tgz", - "integrity": "sha512-lYe4Gx7QT+MKGbDsA+Z+he/Wtef0BiwDOlK/XkBrdfsh9J/jPPXbX0tE9x9cl27Tmu5gg3QUbUrQYa/y+KOHPQ==" - }, - "node_modules/are-we-there-yet": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/are-we-there-yet/-/are-we-there-yet-2.0.0.tgz", - "integrity": "sha512-Ci/qENmwHnsYo9xKIcUJN5LeDKdJ6R1Z1j9V/J5wyq8nh/mYPEpIKJbBZXtZjG04HiK7zV/p6Vs9952MrMeUIw==", - "dependencies": { - "delegates": "^1.0.0", - "readable-stream": "^3.6.0" - }, - "engines": { - "node": ">=10" - } - }, - "node_modules/balanced-match": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/balanced-match/-/balanced-match-1.0.2.tgz", - "integrity": "sha512-3oSeUO0TMV67hN1AmbXsK4yaqU7tjiHlbxRDZOpH0KW9+CeX4bRAaX0Anxt0tx2MrpRpWwQaPwIlISEJhYU5Pw==" - }, - "node_modules/brace-expansion": { - "version": "1.1.11", - "resolved": "https://registry.npmjs.org/brace-expansion/-/brace-expansion-1.1.11.tgz", - "integrity": "sha512-iCuPHDFgrHX7H2vEI/5xpz07zSHB00TpugqhmYtVmMO6518mCuRMoOYFldEBl0g187ufozdaHgWKcYFb61qGiA==", - "dependencies": { - "balanced-match": "^1.0.0", - "concat-map": "0.0.1" - } - }, - "node_modules/chownr": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/chownr/-/chownr-2.0.0.tgz", - "integrity": "sha512-bIomtDF5KGpdogkLd9VspvFzk9KfpyyGlS8YFVZl7TGPBHL5snIOnxeshwVgPteQ9b4Eydl+pVbIyE1DcvCWgQ==", - "engines": { - "node": ">=10" - } - }, - "node_modules/color-support": { - "version": "1.1.3", - "resolved": "https://registry.npmjs.org/color-support/-/color-support-1.1.3.tgz", - "integrity": "sha512-qiBjkpbMLO/HL68y+lh4q0/O1MZFj2RX6X/KmMa3+gJD3z+WwI1ZzDHysvqHGS3mP6mznPckpXmw1nI9cJjyRg==", - "bin": { - "color-support": "bin.js" - } - }, - "node_modules/concat-map": { - "version": "0.0.1", - "resolved": "https://registry.npmjs.org/concat-map/-/concat-map-0.0.1.tgz", - "integrity": "sha512-/Srv4dswyQNBfohGpz9o6Yb3Gz3SrUDqBH5rTuhGR7ahtlbYKnVxw2bCFMRljaA7EXHaXZ8wsHdodFvbkhKmqg==" - }, - "node_modules/console-control-strings": { - "version": "1.1.0", - "resolved": "https://registry.npmjs.org/console-control-strings/-/console-control-strings-1.1.0.tgz", - "integrity": "sha512-ty/fTekppD2fIwRvnZAVdeOiGd1c7YXEixbgJTNzqcxJWKQnjJ/V1bNEEE6hygpM3WjwHFUVK6HTjWSzV4a8sQ==" - }, - "node_modules/debug": { - "version": "4.3.4", - "resolved": "https://registry.npmjs.org/debug/-/debug-4.3.4.tgz", - "integrity": "sha512-PRWFHuSU3eDtQJPvnNY7Jcket1j0t5OuOsFzPPzsekD52Zl8qUfFIPEiswXqIvHWGVHOgX+7G/vCNNhehwxfkQ==", - "dependencies": { - "ms": "2.1.2" - }, - "engines": { - "node": ">=6.0" - }, - "peerDependenciesMeta": { - "supports-color": { - "optional": true - } - } - }, - "node_modules/delegates": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/delegates/-/delegates-1.0.0.tgz", - "integrity": "sha512-bd2L678uiWATM6m5Z1VzNCErI3jiGzt6HGY8OVICs40JQq/HALfbyNJmp0UDakEY4pMMaN0Ly5om/B1VI/+xfQ==" - }, - "node_modules/detect-libc": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/detect-libc/-/detect-libc-2.0.1.tgz", - "integrity": "sha512-463v3ZeIrcWtdgIg6vI6XUncguvr2TnGl4SzDXinkt9mSLpBJKXT3mW6xT3VQdDN11+WVs29pgvivTc4Lp8v+w==", - "engines": { - "node": ">=8" - } - }, - "node_modules/emoji-regex": { - "version": "8.0.0", - "resolved": "https://registry.npmjs.org/emoji-regex/-/emoji-regex-8.0.0.tgz", - "integrity": "sha512-MSjYzcWNOA0ewAHpz0MxpYFvwg6yjy1NG3xteoqz644VCo/RPgnr1/GGt+ic3iJTzQ8Eu3TdM14SawnVUmGE6A==" - }, - "node_modules/fs-minipass": { - "version": "2.1.0", - "resolved": "https://registry.npmjs.org/fs-minipass/-/fs-minipass-2.1.0.tgz", - "integrity": "sha512-V/JgOLFCS+R6Vcq0slCuaeWEdNC3ouDlJMNIsacH2VtALiu9mV4LPrHc5cDl8k5aw6J8jwgWWpiTo5RYhmIzvg==", - "dependencies": { - "minipass": "^3.0.0" - }, - "engines": { - "node": ">= 8" - } - }, - "node_modules/fs.realpath": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/fs.realpath/-/fs.realpath-1.0.0.tgz", - "integrity": "sha512-OO0pH2lK6a0hZnAdau5ItzHPI6pUlvI7jMVnxUQRtw4owF2wk8lOSabtGDCTP4Ggrg2MbGnWO9X8K1t4+fGMDw==" - }, - "node_modules/gauge": { - "version": "3.0.2", - "resolved": "https://registry.npmjs.org/gauge/-/gauge-3.0.2.tgz", - "integrity": "sha512-+5J6MS/5XksCuXq++uFRsnUd7Ovu1XenbeuIuNRJxYWjgQbPuFhT14lAvsWfqfAmnwluf1OwMjz39HjfLPci0Q==", - "dependencies": { - "aproba": "^1.0.3 || ^2.0.0", - "color-support": "^1.1.2", - "console-control-strings": "^1.0.0", - "has-unicode": "^2.0.1", - "object-assign": "^4.1.1", - "signal-exit": "^3.0.0", - "string-width": "^4.2.3", - "strip-ansi": "^6.0.1", - "wide-align": "^1.1.2" - }, - "engines": { - "node": ">=10" - } - }, - "node_modules/glob": { - "version": "7.2.3", - "resolved": "https://registry.npmjs.org/glob/-/glob-7.2.3.tgz", - "integrity": "sha512-nFR0zLpU2YCaRxwoCJvL6UvCH2JFyFVIvwTLsIf21AuHlMskA1hhTdk+LlYJtOlYt9v6dvszD2BGRqBL+iQK9Q==", - "dependencies": { - "fs.realpath": "^1.0.0", - "inflight": "^1.0.4", - "inherits": "2", - "minimatch": "^3.1.1", - "once": "^1.3.0", - "path-is-absolute": "^1.0.0" - }, - "engines": { - "node": "*" - }, - "funding": { - "url": "https://github.com/sponsors/isaacs" - } - }, - "node_modules/google-protobuf": { - "version": "3.21.0", - "resolved": "https://registry.npmjs.org/google-protobuf/-/google-protobuf-3.21.0.tgz", - "integrity": "sha512-byR7MBTK4tZ5PZEb+u5ZTzpt4SfrTxv5682MjPlHN16XeqgZE2/8HOIWeiXe8JKnT9OVbtBGhbq8mtvkK8cd5g==" - }, - "node_modules/grpc-tools": { - "version": "1.11.2", - "resolved": "https://registry.npmjs.org/grpc-tools/-/grpc-tools-1.11.2.tgz", - "integrity": "sha512-4+EgpnnkJraamY++oyBCw5Hp9huRYfgakjNVKbiE3PgO9Tv5ydVlRo7ZyGJ0C0SEiA7HhbVc1sNNtIyK7FiEtg==", + "node_modules/@bufbuild/buf": { + "version": "1.18.0-1", + "resolved": "https://registry.npmjs.org/@bufbuild/buf/-/buf-1.18.0-1.tgz", + "integrity": "sha512-Js6BEbjsfM+aFo2bUxfTs0B4htDbjWCKZ8+FHV6YYqiVsin6NGGQsXblJxwt4+16HLfSnrf41RRnwUaBwHqBzQ==", + "dev": true, "hasInstallScript": true, - "dependencies": { - "@mapbox/node-pre-gyp": "^1.0.5" - }, - "bin": { - "grpc_tools_node_protoc": "bin/protoc.js", - "grpc_tools_node_protoc_plugin": "bin/protoc_plugin.js" - } - }, - "node_modules/has-unicode": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/has-unicode/-/has-unicode-2.0.1.tgz", - "integrity": "sha512-8Rf9Y83NBReMnx0gFzA8JImQACstCYWUplepDa9xprwwtmgEZUF0h/i5xSA625zB/I37EtrswSST6OXxwaaIJQ==" - }, - "node_modules/https-proxy-agent": { - "version": "5.0.1", - "resolved": "https://registry.npmjs.org/https-proxy-agent/-/https-proxy-agent-5.0.1.tgz", - "integrity": "sha512-dFcAjpTQFgoLMzC2VwU+C/CbS7uRL0lWmxDITmqm7C+7F0Odmj6s9l6alZc6AELXhrnggM2CeWSXHGOdX2YtwA==", - "dependencies": { - "agent-base": "6", - "debug": "4" - }, - "engines": { - "node": ">= 6" - } - }, - "node_modules/inflight": { - "version": "1.0.6", - "resolved": "https://registry.npmjs.org/inflight/-/inflight-1.0.6.tgz", - "integrity": "sha512-k92I/b08q4wvFscXCLvqfsHCrjrF7yiXsQuIVvVE7N82W3+aqpzuUdBbfhWcy/FZR3/4IgflMgKLOsvPDrGCJA==", - "dependencies": { - "once": "^1.3.0", - "wrappy": "1" - } - }, - "node_modules/inherits": { - "version": "2.0.4", - "resolved": "https://registry.npmjs.org/inherits/-/inherits-2.0.4.tgz", - "integrity": "sha512-k/vGaX4/Yla3WzyMCvTQOXYeIHvqOKtnqBduzTHpzpQZzAskKMhZ2K+EnBiSM9zGSoIFeMpXKxa4dYeZIQqewQ==" - }, - "node_modules/is-fullwidth-code-point": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/is-fullwidth-code-point/-/is-fullwidth-code-point-3.0.0.tgz", - "integrity": "sha512-zymm5+u+sCsSWyD9qNaejV3DFvhCKclKdizYaJUuHA83RLjb7nSuGnddCHGv0hk+KY7BMAlsWeK4Ueg6EV6XQg==", - "engines": { - "node": ">=8" - } - }, - "node_modules/lru-cache": { - "version": "6.0.0", - "resolved": "https://registry.npmjs.org/lru-cache/-/lru-cache-6.0.0.tgz", - "integrity": "sha512-Jo6dJ04CmSjuznwJSS3pUeWmd/H0ffTlkXXgwZi+eq1UCmqQwCh+eLsYOYCwY991i2Fah4h1BEMCx4qThGbsiA==", - "dependencies": { - "yallist": "^4.0.0" - }, - "engines": { - "node": ">=10" - } - }, - "node_modules/make-dir": { - "version": "3.1.0", - "resolved": "https://registry.npmjs.org/make-dir/-/make-dir-3.1.0.tgz", - "integrity": "sha512-g3FeP20LNwhALb/6Cz6Dd4F2ngze0jz7tbzrD2wAV+o9FeNHe4rL+yK2md0J/fiSf1sa1ADhXqi5+oVwOM/eGw==", - "dependencies": { - "semver": "^6.0.0" - }, - "engines": { - "node": ">=8" - }, - "funding": { - "url": "https://github.com/sponsors/sindresorhus" - } - }, - "node_modules/make-dir/node_modules/semver": { - "version": "6.3.0", - "resolved": "https://registry.npmjs.org/semver/-/semver-6.3.0.tgz", - "integrity": "sha512-b39TBaTSfV6yBrapU89p5fKekE2m/NwnDocOVruQFS1/veMgdzuPcnOM34M6CwxW8jH/lxEa5rBoDeUwu5HHTw==", - "bin": { - "semver": "bin/semver.js" - } - }, - "node_modules/minimatch": { - "version": "3.1.2", - "resolved": "https://registry.npmjs.org/minimatch/-/minimatch-3.1.2.tgz", - "integrity": "sha512-J7p63hRiAjw1NDEww1W7i37+ByIrOWO5XQQAzZ3VOcL0PNybwpfmV/N05zFAzwQ9USyEcX6t3UO+K5aqBQOIHw==", - "dependencies": { - "brace-expansion": "^1.1.7" - }, - "engines": { - "node": "*" - } - }, - "node_modules/minipass": { - "version": "3.3.4", - "resolved": "https://registry.npmjs.org/minipass/-/minipass-3.3.4.tgz", - "integrity": "sha512-I9WPbWHCGu8W+6k1ZiGpPu0GkoKBeorkfKNuAFBNS1HNFJvke82sxvI5bzcCNpWPorkOO5QQ+zomzzwRxejXiw==", - "dependencies": { - "yallist": "^4.0.0" - }, - "engines": { - "node": ">=8" - } - }, - "node_modules/minizlib": { - "version": "2.1.2", - "resolved": "https://registry.npmjs.org/minizlib/-/minizlib-2.1.2.tgz", - "integrity": "sha512-bAxsR8BVfj60DWXHE3u30oHzfl4G7khkSuPW+qvpd7jFRHm7dLxOjUk1EHACJ/hxLY8phGJ0YhYHZo7jil7Qdg==", - "dependencies": { - "minipass": "^3.0.0", - "yallist": "^4.0.0" - }, - "engines": { - "node": ">= 8" - } - }, - "node_modules/mkdirp": { - "version": "1.0.4", - "resolved": "https://registry.npmjs.org/mkdirp/-/mkdirp-1.0.4.tgz", - "integrity": "sha512-vVqVZQyf3WLx2Shd0qJ9xuvqgAyKPLAiqITEtqW0oIUjzo3PePDd6fW9iFz30ef7Ysp/oiWqbhszeGWW2T6Gzw==", - "bin": { - "mkdirp": "bin/cmd.js" - }, - "engines": { - "node": ">=10" - } - }, - "node_modules/ms": { - "version": "2.1.2", - "resolved": "https://registry.npmjs.org/ms/-/ms-2.1.2.tgz", - "integrity": "sha512-sGkPx+VjMtmA6MX27oA4FBFELFCZZ4S4XqeGOXCv68tT+jb3vk/RyaKWP0PTKyWtmLSM0b+adUTEvbs1PEaH2w==" - }, - "node_modules/node-fetch": { - "version": "2.6.7", - "resolved": "https://registry.npmjs.org/node-fetch/-/node-fetch-2.6.7.tgz", - "integrity": "sha512-ZjMPFEfVx5j+y2yF35Kzx5sF7kDzxuDj6ziH4FFbOp87zKDZNx8yExJIb05OGF4Nlt9IHFIMBkRl41VdvcNdbQ==", - "dependencies": { - "whatwg-url": "^5.0.0" - }, - "engines": { - "node": "4.x || >=6.0.0" - }, - "peerDependencies": { - "encoding": "^0.1.0" - }, - "peerDependenciesMeta": { - "encoding": { - "optional": true - } - } - }, - "node_modules/nopt": { - "version": "5.0.0", - "resolved": "https://registry.npmjs.org/nopt/-/nopt-5.0.0.tgz", - "integrity": "sha512-Tbj67rffqceeLpcRXrT7vKAN8CwfPeIBgM7E6iBkmKLV7bEMwpGgYLGv0jACUsECaa/vuxP0IjEont6umdMgtQ==", - "dependencies": { - "abbrev": "1" - }, - "bin": { - "nopt": "bin/nopt.js" - }, - "engines": { - "node": ">=6" - } - }, - "node_modules/npmlog": { - "version": "5.0.1", - "resolved": "https://registry.npmjs.org/npmlog/-/npmlog-5.0.1.tgz", - "integrity": "sha512-AqZtDUWOMKs1G/8lwylVjrdYgqA4d9nu8hc+0gzRxlDb1I10+FHBGMXs6aiQHFdCUUlqH99MUMuLfzWDNDtfxw==", - "dependencies": { - "are-we-there-yet": "^2.0.0", - "console-control-strings": "^1.1.0", - "gauge": "^3.0.0", - "set-blocking": "^2.0.0" - } - }, - "node_modules/object-assign": { - "version": "4.1.1", - "resolved": "https://registry.npmjs.org/object-assign/-/object-assign-4.1.1.tgz", - "integrity": "sha512-rJgTQnkUnH1sFw8yT6VSU3zD3sWmu6sZhIseY8VX+GRu3P6F7Fu+JNDoXfklElbLJSnc3FUQHVe4cU5hj+BcUg==", - "engines": { - "node": ">=0.10.0" - } - }, - "node_modules/once": { - "version": "1.4.0", - "resolved": "https://registry.npmjs.org/once/-/once-1.4.0.tgz", - "integrity": "sha512-lNaJgI+2Q5URQBkccEKHTQOPaXdUxnZZElQTZY0MFUAuaEqe1E+Nyvgdz/aIyNi6Z9MzO5dv1H8n58/GELp3+w==", - "dependencies": { - "wrappy": "1" - } - }, - "node_modules/path-is-absolute": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/path-is-absolute/-/path-is-absolute-1.0.1.tgz", - "integrity": "sha512-AVbw3UJ2e9bq64vSaS9Am0fje1Pa8pbGqTTsmXfaIiMpnr5DlDhfJOuLj9Sf95ZPVDAUerDfEk88MPmPe7UCQg==", - "engines": { - "node": ">=0.10.0" - } - }, - "node_modules/readable-stream": { - "version": "3.6.0", - "resolved": "https://registry.npmjs.org/readable-stream/-/readable-stream-3.6.0.tgz", - "integrity": "sha512-BViHy7LKeTz4oNnkcLJ+lVSL6vpiFeX6/d3oSH8zCW7UxP2onchk+vTGB143xuFjHS3deTgkKoXXymXqymiIdA==", - "dependencies": { - "inherits": "^2.0.3", - "string_decoder": "^1.1.1", - "util-deprecate": "^1.0.1" - }, - "engines": { - "node": ">= 6" - } - }, - "node_modules/rimraf": { - "version": "3.0.2", - "resolved": "https://registry.npmjs.org/rimraf/-/rimraf-3.0.2.tgz", - "integrity": "sha512-JZkJMZkAGFFPP2YqXZXPbMlMBgsxzE8ILs4lMIX/2o0L9UBw9O/Y3o6wFw/i9YLapcUJWwqbi3kdxIPdC62TIA==", - "dependencies": { - "glob": "^7.1.3" - }, - "bin": { - "rimraf": "bin.js" - }, - "funding": { - "url": "https://github.com/sponsors/isaacs" - } - }, - "node_modules/safe-buffer": { - "version": "5.2.1", - "resolved": "https://registry.npmjs.org/safe-buffer/-/safe-buffer-5.2.1.tgz", - "integrity": "sha512-rp3So07KcdmmKbGvgaNxQSJr7bGVSVk5S9Eq1F+ppbRo70+YeaDxkw5Dd8NPN+GD6bjnYm2VuPuCXmpuYvmCXQ==", - "funding": [ - { - "type": "github", - "url": "https://github.com/sponsors/feross" - }, - { - "type": "patreon", - "url": "https://www.patreon.com/feross" - }, - { - "type": "consulting", - "url": "https://feross.org/support" - } - ] - }, - "node_modules/semver": { - "version": "7.3.7", - "resolved": "https://registry.npmjs.org/semver/-/semver-7.3.7.tgz", - "integrity": "sha512-QlYTucUYOews+WeEujDoEGziz4K6c47V/Bd+LjSSYcA94p+DmINdf7ncaUinThfvZyu13lN9OY1XDxt8C0Tw0g==", - "dependencies": { - "lru-cache": "^6.0.0" - }, - "bin": { - "semver": "bin/semver.js" - }, - "engines": { - "node": ">=10" - } - }, - "node_modules/set-blocking": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/set-blocking/-/set-blocking-2.0.0.tgz", - "integrity": "sha512-KiKBS8AnWGEyLzofFfmvKwpdPzqiy16LvQfK3yv/fVH7Bj13/wl3JSR1J+rfgRE9q7xUJK4qvgS8raSOeLUehw==" - }, - "node_modules/signal-exit": { - "version": "3.0.7", - "resolved": "https://registry.npmjs.org/signal-exit/-/signal-exit-3.0.7.tgz", - "integrity": "sha512-wnD2ZE+l+SPC/uoS0vXeE9L1+0wuaMqKlfz9AMUo38JsyLSBWSFcHR1Rri62LZc12vLr1gb3jl7iwQhgwpAbGQ==" - }, - "node_modules/string_decoder": { - "version": "1.3.0", - "resolved": "https://registry.npmjs.org/string_decoder/-/string_decoder-1.3.0.tgz", - "integrity": "sha512-hkRX8U1WjJFd8LsDJ2yQ/wWWxaopEsABU1XfkM8A+j0+85JAGppt16cr1Whg6KIbb4okU6Mql6BOj+uup/wKeA==", - "dependencies": { - "safe-buffer": "~5.2.0" - } - }, - "node_modules/string-width": { - "version": "4.2.3", - "resolved": "https://registry.npmjs.org/string-width/-/string-width-4.2.3.tgz", - "integrity": "sha512-wKyQRQpjJ0sIp62ErSZdGsjMJWsap5oRNihHhu6G7JVO/9jIB6UyevL+tXuOqrng8j/cxKTWyWUwvSTriiZz/g==", - "dependencies": { - "emoji-regex": "^8.0.0", - "is-fullwidth-code-point": "^3.0.0", - "strip-ansi": "^6.0.1" - }, - "engines": { - "node": ">=8" - } - }, - "node_modules/strip-ansi": { - "version": "6.0.1", - "resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-6.0.1.tgz", - "integrity": "sha512-Y38VPSHcqkFrCpFnQ9vuSXmquuv5oXOKpGeT6aGrr3o3Gc9AlVa6JBfUSOCnbxGGZF+/0ooI7KrPuUSztUdU5A==", - "dependencies": { - "ansi-regex": "^5.0.1" - }, - "engines": { - "node": ">=8" - } - }, - "node_modules/tar": { - "version": "6.1.11", - "resolved": "https://registry.npmjs.org/tar/-/tar-6.1.11.tgz", - "integrity": "sha512-an/KZQzQUkZCkuoAA64hM92X0Urb6VpRhAFllDzz44U2mcD5scmT3zBc4VgVpkugF580+DQn8eAFSyoQt0tznA==", - "dependencies": { - "chownr": "^2.0.0", - "fs-minipass": "^2.0.0", - "minipass": "^3.0.0", - "minizlib": "^2.1.1", - "mkdirp": "^1.0.3", - "yallist": "^4.0.0" - }, - "engines": { - "node": ">= 10" - } - }, - "node_modules/tr46": { - "version": "0.0.3", - "resolved": "https://registry.npmjs.org/tr46/-/tr46-0.0.3.tgz", - "integrity": "sha512-N3WMsuqV66lT30CrXNbEjx4GEwlow3v6rr4mCcv6prnfwhS01rkgyFdjPNBYd9br7LpXV1+Emh01fHnq2Gdgrw==" - }, - "node_modules/ts-protoc-gen": { - "version": "0.15.0", - "resolved": "https://registry.npmjs.org/ts-protoc-gen/-/ts-protoc-gen-0.15.0.tgz", - "integrity": "sha512-TycnzEyrdVDlATJ3bWFTtra3SCiEP0W0vySXReAuEygXCUr1j2uaVyL0DhzjwuUdQoW5oXPwk6oZWeA0955V+g==", - "dependencies": { - "google-protobuf": "^3.15.5" - }, "bin": { - "protoc-gen-ts": "bin/protoc-gen-ts" - } - }, - "node_modules/util-deprecate": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/util-deprecate/-/util-deprecate-1.0.2.tgz", - "integrity": "sha512-EPD5q1uXyFxJpCrLnCc1nHnq3gOa6DZBocAIiI2TaSCA7VCJ1UJDMagCzIkXNsUYfD1daK//LTEQ8xiIbrHtcw==" - }, - "node_modules/webidl-conversions": { - "version": "3.0.1", - "resolved": "https://registry.npmjs.org/webidl-conversions/-/webidl-conversions-3.0.1.tgz", - "integrity": "sha512-2JAn3z8AR6rjK8Sm8orRC0h/bcl/DqL7tRPdGZ4I1CjdF+EaMLmYxBHyXuKL849eucPFhvBoxMsflfOb8kxaeQ==" - }, - "node_modules/whatwg-url": { - "version": "5.0.0", - "resolved": "https://registry.npmjs.org/whatwg-url/-/whatwg-url-5.0.0.tgz", - "integrity": "sha512-saE57nupxk6v3HY35+jzBwYa0rKSy0XR8JSxZPwgLr7ys0IBzhGviA1/TUGJLmSVqs8pb9AnvICXEuOHLprYTw==", - "dependencies": { - "tr46": "~0.0.3", - "webidl-conversions": "^3.0.0" + "buf": "bin/buf", + "protoc-gen-buf-breaking": "bin/protoc-gen-buf-breaking", + "protoc-gen-buf-lint": "bin/protoc-gen-buf-lint" + }, + "engines": { + "node": ">=12" + }, + "optionalDependencies": { + "@bufbuild/buf-darwin-arm64": "1.18.0-1", + "@bufbuild/buf-darwin-x64": "1.18.0-1", + "@bufbuild/buf-linux-aarch64": "1.18.0-1", + "@bufbuild/buf-linux-x64": "1.18.0-1", + "@bufbuild/buf-win32-arm64": "1.18.0-1", + "@bufbuild/buf-win32-x64": "1.18.0-1" + } + }, + "node_modules/@bufbuild/buf-darwin-arm64": { + "version": "1.18.0-1", + "resolved": "https://registry.npmjs.org/@bufbuild/buf-darwin-arm64/-/buf-darwin-arm64-1.18.0-1.tgz", + "integrity": "sha512-4iFChDoXAiuMZQoXpJoCSvCkcT7p1fmsY2N/+wTdODQbXAwqR8vQz19FPR2Jv5ukhd44LUi43nFsyQ2dWmeZeA==", + "cpu": [ + "arm64" + ], + "dev": true, + "optional": true, + "os": [ + "darwin" + ], + "engines": { + "node": ">=12" + } + }, + "node_modules/@bufbuild/buf-darwin-x64": { + "version": "1.18.0-1", + "resolved": "https://registry.npmjs.org/@bufbuild/buf-darwin-x64/-/buf-darwin-x64-1.18.0-1.tgz", + "integrity": "sha512-tuOnoCqFaUOj9dBuubEve5XGNkjL+zeCW7ETNgmArUlQobEkL2Fza5mi5Fqt90Ommfj1xpc4vaeNz1oSuU3dTw==", + "cpu": [ + "x64" + ], + "dev": true, + "optional": true, + "os": [ + "darwin" + ], + "engines": { + "node": ">=12" + } + }, + "node_modules/@bufbuild/buf-linux-aarch64": { + "version": "1.18.0-1", + "resolved": "https://registry.npmjs.org/@bufbuild/buf-linux-aarch64/-/buf-linux-aarch64-1.18.0-1.tgz", + "integrity": "sha512-QdYp89hlLVPPZYlaeVhE0swk5Ygncij1avVmvLQw99+lvaFlDu9zRQ0Jo7n1VjpZWdDhUd/thYWxSqSMJYLajA==", + "cpu": [ + "arm64" + ], + "dev": true, + "optional": true, + "os": [ + "linux" + ], + "engines": { + "node": ">=12" + } + }, + "node_modules/@bufbuild/buf-linux-x64": { + "version": "1.18.0-1", + "resolved": "https://registry.npmjs.org/@bufbuild/buf-linux-x64/-/buf-linux-x64-1.18.0-1.tgz", + "integrity": "sha512-9a6xv+OsYjhg5f1WHDtoXJVxG2j6awFi5cx9dkCPMODvFsll7skkwfkDngxKkibNU0aY6TxLoQXdf77eQwIWtQ==", + "cpu": [ + "x64" + ], + "dev": true, + "optional": true, + "os": [ + "linux" + ], + "engines": { + "node": ">=12" + } + }, + "node_modules/@bufbuild/buf-win32-arm64": { + "version": "1.18.0-1", + "resolved": "https://registry.npmjs.org/@bufbuild/buf-win32-arm64/-/buf-win32-arm64-1.18.0-1.tgz", + "integrity": "sha512-UP6KevD0cdxa4IJcDy31KC9sIIgxCWBP/K9uW+gBDLg2cNQBtVqlN8o65PJhsl9HB+p0/Y4pDi4i/jU8dXGH8g==", + "cpu": [ + "arm64" + ], + "dev": true, + "optional": true, + "os": [ + "win32" + ], + "engines": { + "node": ">=12" + } + }, + "node_modules/@bufbuild/buf-win32-x64": { + "version": "1.18.0-1", + "resolved": "https://registry.npmjs.org/@bufbuild/buf-win32-x64/-/buf-win32-x64-1.18.0-1.tgz", + "integrity": "sha512-4OVbTwbQ1ZHGtITJw7hXYP2HinCWn3PN1ewCU+SCvynJTQ8vXQuVNlKZ2EmGl6aTUWdF3mSL/WPsRiG3fXhxfg==", + "cpu": [ + "x64" + ], + "dev": true, + "optional": true, + "os": [ + "win32" + ], + "engines": { + "node": ">=12" } - }, - "node_modules/wide-align": { - "version": "1.1.5", - "resolved": "https://registry.npmjs.org/wide-align/-/wide-align-1.1.5.tgz", - "integrity": "sha512-eDMORYaPNZ4sQIuuYPDHdQvf4gyCF9rEEV/yPxGfwPkRodwEgiMUUXTx/dex+Me0wxx53S+NgUHaP7y3MGlDmg==", - "dependencies": { - "string-width": "^1.0.2 || 2 || 3 || 4" - } - }, - "node_modules/wrappy": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/wrappy/-/wrappy-1.0.2.tgz", - "integrity": "sha512-l4Sp/DRseor9wL6EvV2+TuQn63dMkPjZ/sp9XkghTEbV9KlPS1xUsZ3u7/IQO4wxtcFB4bgpQPRcR3QCvezPcQ==" - }, - "node_modules/yallist": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/yallist/-/yallist-4.0.0.tgz", - "integrity": "sha512-3wdGidZyq5PB084XLES5TpOSRA3wjXAlIWMhum2kRcv/41Sn2emQ0dycQW4uZXLejwKvg6EsvbdlVL+FYEct7A==" } }, "dependencies": { - "@mapbox/node-pre-gyp": { - "version": "1.0.9", - "resolved": "https://registry.npmjs.org/@mapbox/node-pre-gyp/-/node-pre-gyp-1.0.9.tgz", - "integrity": "sha512-aDF3S3rK9Q2gey/WAttUlISduDItz5BU3306M9Eyv6/oS40aMprnopshtlKTykxRNIBEZuRMaZAnbrQ4QtKGyw==", - "requires": { - "detect-libc": "^2.0.0", - "https-proxy-agent": "^5.0.0", - "make-dir": "^3.1.0", - "node-fetch": "^2.6.7", - "nopt": "^5.0.0", - "npmlog": "^5.0.1", - "rimraf": "^3.0.2", - "semver": "^7.3.5", - "tar": "^6.1.11" - } - }, - "abbrev": { - "version": "1.1.1", - "resolved": "https://registry.npmjs.org/abbrev/-/abbrev-1.1.1.tgz", - "integrity": "sha512-nne9/IiQ/hzIhY6pdDnbBtz7DjPTKrY00P/zvPSm5pOFkl6xuGrGnXn/VtTNNfNtAfZ9/1RtehkszU9qcTii0Q==" - }, - "agent-base": { - "version": "6.0.2", - "resolved": "https://registry.npmjs.org/agent-base/-/agent-base-6.0.2.tgz", - "integrity": "sha512-RZNwNclF7+MS/8bDg70amg32dyeZGZxiDuQmZxKLAlQjr3jGyLx+4Kkk58UO7D2QdgFIQCovuSuZESne6RG6XQ==", - "requires": { - "debug": "4" - } - }, - "ansi-regex": { - "version": "5.0.1", - "resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-5.0.1.tgz", - "integrity": "sha512-quJQXlTSUGL2LH9SUXo8VwsY4soanhgo6LNSm84E1LBcE8s3O0wpdiRzyR9z/ZZJMlMWv37qOOb9pdJlMUEKFQ==" - }, - "aproba": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/aproba/-/aproba-2.0.0.tgz", - "integrity": "sha512-lYe4Gx7QT+MKGbDsA+Z+he/Wtef0BiwDOlK/XkBrdfsh9J/jPPXbX0tE9x9cl27Tmu5gg3QUbUrQYa/y+KOHPQ==" - }, - "are-we-there-yet": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/are-we-there-yet/-/are-we-there-yet-2.0.0.tgz", - "integrity": "sha512-Ci/qENmwHnsYo9xKIcUJN5LeDKdJ6R1Z1j9V/J5wyq8nh/mYPEpIKJbBZXtZjG04HiK7zV/p6Vs9952MrMeUIw==", - "requires": { - "delegates": "^1.0.0", - "readable-stream": "^3.6.0" - } - }, - "balanced-match": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/balanced-match/-/balanced-match-1.0.2.tgz", - "integrity": "sha512-3oSeUO0TMV67hN1AmbXsK4yaqU7tjiHlbxRDZOpH0KW9+CeX4bRAaX0Anxt0tx2MrpRpWwQaPwIlISEJhYU5Pw==" - }, - "brace-expansion": { - "version": "1.1.11", - "resolved": "https://registry.npmjs.org/brace-expansion/-/brace-expansion-1.1.11.tgz", - "integrity": "sha512-iCuPHDFgrHX7H2vEI/5xpz07zSHB00TpugqhmYtVmMO6518mCuRMoOYFldEBl0g187ufozdaHgWKcYFb61qGiA==", - "requires": { - "balanced-match": "^1.0.0", - "concat-map": "0.0.1" - } - }, - "chownr": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/chownr/-/chownr-2.0.0.tgz", - "integrity": "sha512-bIomtDF5KGpdogkLd9VspvFzk9KfpyyGlS8YFVZl7TGPBHL5snIOnxeshwVgPteQ9b4Eydl+pVbIyE1DcvCWgQ==" - }, - "color-support": { - "version": "1.1.3", - "resolved": "https://registry.npmjs.org/color-support/-/color-support-1.1.3.tgz", - "integrity": "sha512-qiBjkpbMLO/HL68y+lh4q0/O1MZFj2RX6X/KmMa3+gJD3z+WwI1ZzDHysvqHGS3mP6mznPckpXmw1nI9cJjyRg==" - }, - "concat-map": { - "version": "0.0.1", - "resolved": "https://registry.npmjs.org/concat-map/-/concat-map-0.0.1.tgz", - "integrity": "sha512-/Srv4dswyQNBfohGpz9o6Yb3Gz3SrUDqBH5rTuhGR7ahtlbYKnVxw2bCFMRljaA7EXHaXZ8wsHdodFvbkhKmqg==" - }, - "console-control-strings": { - "version": "1.1.0", - "resolved": "https://registry.npmjs.org/console-control-strings/-/console-control-strings-1.1.0.tgz", - "integrity": "sha512-ty/fTekppD2fIwRvnZAVdeOiGd1c7YXEixbgJTNzqcxJWKQnjJ/V1bNEEE6hygpM3WjwHFUVK6HTjWSzV4a8sQ==" - }, - "debug": { - "version": "4.3.4", - "resolved": "https://registry.npmjs.org/debug/-/debug-4.3.4.tgz", - "integrity": "sha512-PRWFHuSU3eDtQJPvnNY7Jcket1j0t5OuOsFzPPzsekD52Zl8qUfFIPEiswXqIvHWGVHOgX+7G/vCNNhehwxfkQ==", - "requires": { - "ms": "2.1.2" - } - }, - "delegates": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/delegates/-/delegates-1.0.0.tgz", - "integrity": "sha512-bd2L678uiWATM6m5Z1VzNCErI3jiGzt6HGY8OVICs40JQq/HALfbyNJmp0UDakEY4pMMaN0Ly5om/B1VI/+xfQ==" - }, - "detect-libc": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/detect-libc/-/detect-libc-2.0.1.tgz", - "integrity": "sha512-463v3ZeIrcWtdgIg6vI6XUncguvr2TnGl4SzDXinkt9mSLpBJKXT3mW6xT3VQdDN11+WVs29pgvivTc4Lp8v+w==" - }, - "emoji-regex": { - "version": "8.0.0", - "resolved": "https://registry.npmjs.org/emoji-regex/-/emoji-regex-8.0.0.tgz", - "integrity": "sha512-MSjYzcWNOA0ewAHpz0MxpYFvwg6yjy1NG3xteoqz644VCo/RPgnr1/GGt+ic3iJTzQ8Eu3TdM14SawnVUmGE6A==" - }, - "fs-minipass": { - "version": "2.1.0", - "resolved": "https://registry.npmjs.org/fs-minipass/-/fs-minipass-2.1.0.tgz", - "integrity": "sha512-V/JgOLFCS+R6Vcq0slCuaeWEdNC3ouDlJMNIsacH2VtALiu9mV4LPrHc5cDl8k5aw6J8jwgWWpiTo5RYhmIzvg==", - "requires": { - "minipass": "^3.0.0" - } - }, - "fs.realpath": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/fs.realpath/-/fs.realpath-1.0.0.tgz", - "integrity": "sha512-OO0pH2lK6a0hZnAdau5ItzHPI6pUlvI7jMVnxUQRtw4owF2wk8lOSabtGDCTP4Ggrg2MbGnWO9X8K1t4+fGMDw==" - }, - "gauge": { - "version": "3.0.2", - "resolved": "https://registry.npmjs.org/gauge/-/gauge-3.0.2.tgz", - "integrity": "sha512-+5J6MS/5XksCuXq++uFRsnUd7Ovu1XenbeuIuNRJxYWjgQbPuFhT14lAvsWfqfAmnwluf1OwMjz39HjfLPci0Q==", - "requires": { - "aproba": "^1.0.3 || ^2.0.0", - "color-support": "^1.1.2", - "console-control-strings": "^1.0.0", - "has-unicode": "^2.0.1", - "object-assign": "^4.1.1", - "signal-exit": "^3.0.0", - "string-width": "^4.2.3", - "strip-ansi": "^6.0.1", - "wide-align": "^1.1.2" - } - }, - "glob": { - "version": "7.2.3", - "resolved": "https://registry.npmjs.org/glob/-/glob-7.2.3.tgz", - "integrity": "sha512-nFR0zLpU2YCaRxwoCJvL6UvCH2JFyFVIvwTLsIf21AuHlMskA1hhTdk+LlYJtOlYt9v6dvszD2BGRqBL+iQK9Q==", - "requires": { - "fs.realpath": "^1.0.0", - "inflight": "^1.0.4", - "inherits": "2", - "minimatch": "^3.1.1", - "once": "^1.3.0", - "path-is-absolute": "^1.0.0" - } - }, - "google-protobuf": { - "version": "3.21.0", - "resolved": "https://registry.npmjs.org/google-protobuf/-/google-protobuf-3.21.0.tgz", - "integrity": "sha512-byR7MBTK4tZ5PZEb+u5ZTzpt4SfrTxv5682MjPlHN16XeqgZE2/8HOIWeiXe8JKnT9OVbtBGhbq8mtvkK8cd5g==" - }, - "grpc-tools": { - "version": "1.11.2", - "resolved": "https://registry.npmjs.org/grpc-tools/-/grpc-tools-1.11.2.tgz", - "integrity": "sha512-4+EgpnnkJraamY++oyBCw5Hp9huRYfgakjNVKbiE3PgO9Tv5ydVlRo7ZyGJ0C0SEiA7HhbVc1sNNtIyK7FiEtg==", - "requires": { - "@mapbox/node-pre-gyp": "^1.0.5" - } - }, - "has-unicode": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/has-unicode/-/has-unicode-2.0.1.tgz", - "integrity": "sha512-8Rf9Y83NBReMnx0gFzA8JImQACstCYWUplepDa9xprwwtmgEZUF0h/i5xSA625zB/I37EtrswSST6OXxwaaIJQ==" - }, - "https-proxy-agent": { - "version": "5.0.1", - "resolved": "https://registry.npmjs.org/https-proxy-agent/-/https-proxy-agent-5.0.1.tgz", - "integrity": "sha512-dFcAjpTQFgoLMzC2VwU+C/CbS7uRL0lWmxDITmqm7C+7F0Odmj6s9l6alZc6AELXhrnggM2CeWSXHGOdX2YtwA==", - "requires": { - "agent-base": "6", - "debug": "4" - } - }, - "inflight": { - "version": "1.0.6", - "resolved": "https://registry.npmjs.org/inflight/-/inflight-1.0.6.tgz", - "integrity": "sha512-k92I/b08q4wvFscXCLvqfsHCrjrF7yiXsQuIVvVE7N82W3+aqpzuUdBbfhWcy/FZR3/4IgflMgKLOsvPDrGCJA==", - "requires": { - "once": "^1.3.0", - "wrappy": "1" - } - }, - "inherits": { - "version": "2.0.4", - "resolved": "https://registry.npmjs.org/inherits/-/inherits-2.0.4.tgz", - "integrity": "sha512-k/vGaX4/Yla3WzyMCvTQOXYeIHvqOKtnqBduzTHpzpQZzAskKMhZ2K+EnBiSM9zGSoIFeMpXKxa4dYeZIQqewQ==" - }, - "is-fullwidth-code-point": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/is-fullwidth-code-point/-/is-fullwidth-code-point-3.0.0.tgz", - "integrity": "sha512-zymm5+u+sCsSWyD9qNaejV3DFvhCKclKdizYaJUuHA83RLjb7nSuGnddCHGv0hk+KY7BMAlsWeK4Ueg6EV6XQg==" - }, - "lru-cache": { - "version": "6.0.0", - "resolved": "https://registry.npmjs.org/lru-cache/-/lru-cache-6.0.0.tgz", - "integrity": "sha512-Jo6dJ04CmSjuznwJSS3pUeWmd/H0ffTlkXXgwZi+eq1UCmqQwCh+eLsYOYCwY991i2Fah4h1BEMCx4qThGbsiA==", - "requires": { - "yallist": "^4.0.0" - } - }, - "make-dir": { - "version": "3.1.0", - "resolved": "https://registry.npmjs.org/make-dir/-/make-dir-3.1.0.tgz", - "integrity": "sha512-g3FeP20LNwhALb/6Cz6Dd4F2ngze0jz7tbzrD2wAV+o9FeNHe4rL+yK2md0J/fiSf1sa1ADhXqi5+oVwOM/eGw==", - "requires": { - "semver": "^6.0.0" - }, - "dependencies": { - "semver": { - "version": "6.3.0", - "resolved": "https://registry.npmjs.org/semver/-/semver-6.3.0.tgz", - "integrity": "sha512-b39TBaTSfV6yBrapU89p5fKekE2m/NwnDocOVruQFS1/veMgdzuPcnOM34M6CwxW8jH/lxEa5rBoDeUwu5HHTw==" - } - } - }, - "minimatch": { - "version": "3.1.2", - "resolved": "https://registry.npmjs.org/minimatch/-/minimatch-3.1.2.tgz", - "integrity": "sha512-J7p63hRiAjw1NDEww1W7i37+ByIrOWO5XQQAzZ3VOcL0PNybwpfmV/N05zFAzwQ9USyEcX6t3UO+K5aqBQOIHw==", - "requires": { - "brace-expansion": "^1.1.7" - } - }, - "minipass": { - "version": "3.3.4", - "resolved": "https://registry.npmjs.org/minipass/-/minipass-3.3.4.tgz", - "integrity": "sha512-I9WPbWHCGu8W+6k1ZiGpPu0GkoKBeorkfKNuAFBNS1HNFJvke82sxvI5bzcCNpWPorkOO5QQ+zomzzwRxejXiw==", - "requires": { - "yallist": "^4.0.0" - } - }, - "minizlib": { - "version": "2.1.2", - "resolved": "https://registry.npmjs.org/minizlib/-/minizlib-2.1.2.tgz", - "integrity": "sha512-bAxsR8BVfj60DWXHE3u30oHzfl4G7khkSuPW+qvpd7jFRHm7dLxOjUk1EHACJ/hxLY8phGJ0YhYHZo7jil7Qdg==", - "requires": { - "minipass": "^3.0.0", - "yallist": "^4.0.0" - } - }, - "mkdirp": { - "version": "1.0.4", - "resolved": "https://registry.npmjs.org/mkdirp/-/mkdirp-1.0.4.tgz", - "integrity": "sha512-vVqVZQyf3WLx2Shd0qJ9xuvqgAyKPLAiqITEtqW0oIUjzo3PePDd6fW9iFz30ef7Ysp/oiWqbhszeGWW2T6Gzw==" - }, - "ms": { - "version": "2.1.2", - "resolved": "https://registry.npmjs.org/ms/-/ms-2.1.2.tgz", - "integrity": "sha512-sGkPx+VjMtmA6MX27oA4FBFELFCZZ4S4XqeGOXCv68tT+jb3vk/RyaKWP0PTKyWtmLSM0b+adUTEvbs1PEaH2w==" - }, - "node-fetch": { - "version": "2.6.7", - "resolved": "https://registry.npmjs.org/node-fetch/-/node-fetch-2.6.7.tgz", - "integrity": "sha512-ZjMPFEfVx5j+y2yF35Kzx5sF7kDzxuDj6ziH4FFbOp87zKDZNx8yExJIb05OGF4Nlt9IHFIMBkRl41VdvcNdbQ==", - "requires": { - "whatwg-url": "^5.0.0" - } - }, - "nopt": { - "version": "5.0.0", - "resolved": "https://registry.npmjs.org/nopt/-/nopt-5.0.0.tgz", - "integrity": "sha512-Tbj67rffqceeLpcRXrT7vKAN8CwfPeIBgM7E6iBkmKLV7bEMwpGgYLGv0jACUsECaa/vuxP0IjEont6umdMgtQ==", - "requires": { - "abbrev": "1" - } - }, - "npmlog": { - "version": "5.0.1", - "resolved": "https://registry.npmjs.org/npmlog/-/npmlog-5.0.1.tgz", - "integrity": "sha512-AqZtDUWOMKs1G/8lwylVjrdYgqA4d9nu8hc+0gzRxlDb1I10+FHBGMXs6aiQHFdCUUlqH99MUMuLfzWDNDtfxw==", - "requires": { - "are-we-there-yet": "^2.0.0", - "console-control-strings": "^1.1.0", - "gauge": "^3.0.0", - "set-blocking": "^2.0.0" - } - }, - "object-assign": { - "version": "4.1.1", - "resolved": "https://registry.npmjs.org/object-assign/-/object-assign-4.1.1.tgz", - "integrity": "sha512-rJgTQnkUnH1sFw8yT6VSU3zD3sWmu6sZhIseY8VX+GRu3P6F7Fu+JNDoXfklElbLJSnc3FUQHVe4cU5hj+BcUg==" - }, - "once": { - "version": "1.4.0", - "resolved": "https://registry.npmjs.org/once/-/once-1.4.0.tgz", - "integrity": "sha512-lNaJgI+2Q5URQBkccEKHTQOPaXdUxnZZElQTZY0MFUAuaEqe1E+Nyvgdz/aIyNi6Z9MzO5dv1H8n58/GELp3+w==", - "requires": { - "wrappy": "1" - } - }, - "path-is-absolute": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/path-is-absolute/-/path-is-absolute-1.0.1.tgz", - "integrity": "sha512-AVbw3UJ2e9bq64vSaS9Am0fje1Pa8pbGqTTsmXfaIiMpnr5DlDhfJOuLj9Sf95ZPVDAUerDfEk88MPmPe7UCQg==" - }, - "readable-stream": { - "version": "3.6.0", - "resolved": "https://registry.npmjs.org/readable-stream/-/readable-stream-3.6.0.tgz", - "integrity": "sha512-BViHy7LKeTz4oNnkcLJ+lVSL6vpiFeX6/d3oSH8zCW7UxP2onchk+vTGB143xuFjHS3deTgkKoXXymXqymiIdA==", - "requires": { - "inherits": "^2.0.3", - "string_decoder": "^1.1.1", - "util-deprecate": "^1.0.1" - } - }, - "rimraf": { - "version": "3.0.2", - "resolved": "https://registry.npmjs.org/rimraf/-/rimraf-3.0.2.tgz", - "integrity": "sha512-JZkJMZkAGFFPP2YqXZXPbMlMBgsxzE8ILs4lMIX/2o0L9UBw9O/Y3o6wFw/i9YLapcUJWwqbi3kdxIPdC62TIA==", - "requires": { - "glob": "^7.1.3" - } - }, - "safe-buffer": { - "version": "5.2.1", - "resolved": "https://registry.npmjs.org/safe-buffer/-/safe-buffer-5.2.1.tgz", - "integrity": "sha512-rp3So07KcdmmKbGvgaNxQSJr7bGVSVk5S9Eq1F+ppbRo70+YeaDxkw5Dd8NPN+GD6bjnYm2VuPuCXmpuYvmCXQ==" - }, - "semver": { - "version": "7.3.7", - "resolved": "https://registry.npmjs.org/semver/-/semver-7.3.7.tgz", - "integrity": "sha512-QlYTucUYOews+WeEujDoEGziz4K6c47V/Bd+LjSSYcA94p+DmINdf7ncaUinThfvZyu13lN9OY1XDxt8C0Tw0g==", - "requires": { - "lru-cache": "^6.0.0" - } - }, - "set-blocking": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/set-blocking/-/set-blocking-2.0.0.tgz", - "integrity": "sha512-KiKBS8AnWGEyLzofFfmvKwpdPzqiy16LvQfK3yv/fVH7Bj13/wl3JSR1J+rfgRE9q7xUJK4qvgS8raSOeLUehw==" - }, - "signal-exit": { - "version": "3.0.7", - "resolved": "https://registry.npmjs.org/signal-exit/-/signal-exit-3.0.7.tgz", - "integrity": "sha512-wnD2ZE+l+SPC/uoS0vXeE9L1+0wuaMqKlfz9AMUo38JsyLSBWSFcHR1Rri62LZc12vLr1gb3jl7iwQhgwpAbGQ==" - }, - "string_decoder": { - "version": "1.3.0", - "resolved": "https://registry.npmjs.org/string_decoder/-/string_decoder-1.3.0.tgz", - "integrity": "sha512-hkRX8U1WjJFd8LsDJ2yQ/wWWxaopEsABU1XfkM8A+j0+85JAGppt16cr1Whg6KIbb4okU6Mql6BOj+uup/wKeA==", - "requires": { - "safe-buffer": "~5.2.0" - } - }, - "string-width": { - "version": "4.2.3", - "resolved": "https://registry.npmjs.org/string-width/-/string-width-4.2.3.tgz", - "integrity": "sha512-wKyQRQpjJ0sIp62ErSZdGsjMJWsap5oRNihHhu6G7JVO/9jIB6UyevL+tXuOqrng8j/cxKTWyWUwvSTriiZz/g==", - "requires": { - "emoji-regex": "^8.0.0", - "is-fullwidth-code-point": "^3.0.0", - "strip-ansi": "^6.0.1" - } - }, - "strip-ansi": { - "version": "6.0.1", - "resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-6.0.1.tgz", - "integrity": "sha512-Y38VPSHcqkFrCpFnQ9vuSXmquuv5oXOKpGeT6aGrr3o3Gc9AlVa6JBfUSOCnbxGGZF+/0ooI7KrPuUSztUdU5A==", - "requires": { - "ansi-regex": "^5.0.1" - } - }, - "tar": { - "version": "6.1.11", - "resolved": "https://registry.npmjs.org/tar/-/tar-6.1.11.tgz", - "integrity": "sha512-an/KZQzQUkZCkuoAA64hM92X0Urb6VpRhAFllDzz44U2mcD5scmT3zBc4VgVpkugF580+DQn8eAFSyoQt0tznA==", - "requires": { - "chownr": "^2.0.0", - "fs-minipass": "^2.0.0", - "minipass": "^3.0.0", - "minizlib": "^2.1.1", - "mkdirp": "^1.0.3", - "yallist": "^4.0.0" - } - }, - "tr46": { - "version": "0.0.3", - "resolved": "https://registry.npmjs.org/tr46/-/tr46-0.0.3.tgz", - "integrity": "sha512-N3WMsuqV66lT30CrXNbEjx4GEwlow3v6rr4mCcv6prnfwhS01rkgyFdjPNBYd9br7LpXV1+Emh01fHnq2Gdgrw==" - }, - "ts-protoc-gen": { - "version": "0.15.0", - "resolved": "https://registry.npmjs.org/ts-protoc-gen/-/ts-protoc-gen-0.15.0.tgz", - "integrity": "sha512-TycnzEyrdVDlATJ3bWFTtra3SCiEP0W0vySXReAuEygXCUr1j2uaVyL0DhzjwuUdQoW5oXPwk6oZWeA0955V+g==", - "requires": { - "google-protobuf": "^3.15.5" - } - }, - "util-deprecate": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/util-deprecate/-/util-deprecate-1.0.2.tgz", - "integrity": "sha512-EPD5q1uXyFxJpCrLnCc1nHnq3gOa6DZBocAIiI2TaSCA7VCJ1UJDMagCzIkXNsUYfD1daK//LTEQ8xiIbrHtcw==" - }, - "webidl-conversions": { - "version": "3.0.1", - "resolved": "https://registry.npmjs.org/webidl-conversions/-/webidl-conversions-3.0.1.tgz", - "integrity": "sha512-2JAn3z8AR6rjK8Sm8orRC0h/bcl/DqL7tRPdGZ4I1CjdF+EaMLmYxBHyXuKL849eucPFhvBoxMsflfOb8kxaeQ==" - }, - "whatwg-url": { - "version": "5.0.0", - "resolved": "https://registry.npmjs.org/whatwg-url/-/whatwg-url-5.0.0.tgz", - "integrity": "sha512-saE57nupxk6v3HY35+jzBwYa0rKSy0XR8JSxZPwgLr7ys0IBzhGviA1/TUGJLmSVqs8pb9AnvICXEuOHLprYTw==", - "requires": { - "tr46": "~0.0.3", - "webidl-conversions": "^3.0.0" - } - }, - "wide-align": { - "version": "1.1.5", - "resolved": "https://registry.npmjs.org/wide-align/-/wide-align-1.1.5.tgz", - "integrity": "sha512-eDMORYaPNZ4sQIuuYPDHdQvf4gyCF9rEEV/yPxGfwPkRodwEgiMUUXTx/dex+Me0wxx53S+NgUHaP7y3MGlDmg==", - "requires": { - "string-width": "^1.0.2 || 2 || 3 || 4" - } - }, - "wrappy": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/wrappy/-/wrappy-1.0.2.tgz", - "integrity": "sha512-l4Sp/DRseor9wL6EvV2+TuQn63dMkPjZ/sp9XkghTEbV9KlPS1xUsZ3u7/IQO4wxtcFB4bgpQPRcR3QCvezPcQ==" - }, - "yallist": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/yallist/-/yallist-4.0.0.tgz", - "integrity": "sha512-3wdGidZyq5PB084XLES5TpOSRA3wjXAlIWMhum2kRcv/41Sn2emQ0dycQW4uZXLejwKvg6EsvbdlVL+FYEct7A==" + "@bufbuild/buf": { + "version": "1.18.0-1", + "resolved": "https://registry.npmjs.org/@bufbuild/buf/-/buf-1.18.0-1.tgz", + "integrity": "sha512-Js6BEbjsfM+aFo2bUxfTs0B4htDbjWCKZ8+FHV6YYqiVsin6NGGQsXblJxwt4+16HLfSnrf41RRnwUaBwHqBzQ==", + "dev": true, + "requires": { + "@bufbuild/buf-darwin-arm64": "1.18.0-1", + "@bufbuild/buf-darwin-x64": "1.18.0-1", + "@bufbuild/buf-linux-aarch64": "1.18.0-1", + "@bufbuild/buf-linux-x64": "1.18.0-1", + "@bufbuild/buf-win32-arm64": "1.18.0-1", + "@bufbuild/buf-win32-x64": "1.18.0-1" + } + }, + "@bufbuild/buf-darwin-arm64": { + "version": "1.18.0-1", + "resolved": "https://registry.npmjs.org/@bufbuild/buf-darwin-arm64/-/buf-darwin-arm64-1.18.0-1.tgz", + "integrity": "sha512-4iFChDoXAiuMZQoXpJoCSvCkcT7p1fmsY2N/+wTdODQbXAwqR8vQz19FPR2Jv5ukhd44LUi43nFsyQ2dWmeZeA==", + "dev": true, + "optional": true + }, + "@bufbuild/buf-darwin-x64": { + "version": "1.18.0-1", + "resolved": "https://registry.npmjs.org/@bufbuild/buf-darwin-x64/-/buf-darwin-x64-1.18.0-1.tgz", + "integrity": "sha512-tuOnoCqFaUOj9dBuubEve5XGNkjL+zeCW7ETNgmArUlQobEkL2Fza5mi5Fqt90Ommfj1xpc4vaeNz1oSuU3dTw==", + "dev": true, + "optional": true + }, + "@bufbuild/buf-linux-aarch64": { + "version": "1.18.0-1", + "resolved": "https://registry.npmjs.org/@bufbuild/buf-linux-aarch64/-/buf-linux-aarch64-1.18.0-1.tgz", + "integrity": "sha512-QdYp89hlLVPPZYlaeVhE0swk5Ygncij1avVmvLQw99+lvaFlDu9zRQ0Jo7n1VjpZWdDhUd/thYWxSqSMJYLajA==", + "dev": true, + "optional": true + }, + "@bufbuild/buf-linux-x64": { + "version": "1.18.0-1", + "resolved": "https://registry.npmjs.org/@bufbuild/buf-linux-x64/-/buf-linux-x64-1.18.0-1.tgz", + "integrity": "sha512-9a6xv+OsYjhg5f1WHDtoXJVxG2j6awFi5cx9dkCPMODvFsll7skkwfkDngxKkibNU0aY6TxLoQXdf77eQwIWtQ==", + "dev": true, + "optional": true + }, + "@bufbuild/buf-win32-arm64": { + "version": "1.18.0-1", + "resolved": "https://registry.npmjs.org/@bufbuild/buf-win32-arm64/-/buf-win32-arm64-1.18.0-1.tgz", + "integrity": "sha512-UP6KevD0cdxa4IJcDy31KC9sIIgxCWBP/K9uW+gBDLg2cNQBtVqlN8o65PJhsl9HB+p0/Y4pDi4i/jU8dXGH8g==", + "dev": true, + "optional": true + }, + "@bufbuild/buf-win32-x64": { + "version": "1.18.0-1", + "resolved": "https://registry.npmjs.org/@bufbuild/buf-win32-x64/-/buf-win32-x64-1.18.0-1.tgz", + "integrity": "sha512-4OVbTwbQ1ZHGtITJw7hXYP2HinCWn3PN1ewCU+SCvynJTQ8vXQuVNlKZ2EmGl6aTUWdF3mSL/WPsRiG3fXhxfg==", + "dev": true, + "optional": true } } } diff --git a/package.json b/package.json index ddfa9e2..7d88081 100644 --- a/package.json +++ b/package.json @@ -1,14 +1,24 @@ { - "name": "api-interfaces", + "name": "stability_api", "version": "0.1.0", - "description": "", - "main": "index.js", - "scripts": {}, + "description": "", + "type": "module", + "exports": { + "./*.js": "./src/*.js", + "./*.ts": "./src/*.ts" + }, + "scripts": { + "generate-go": "buf generate --template buf.gen.go.yaml --output=./src", + "generate-js": "buf generate --template buf.gen.js.yaml --output=./src", + "generate-kt": "buf generate --template buf.gen.kt.yaml --output=./src", + "generate-py": "buf generate --template buf.gen.py.yaml --output=./src", + "generate-swift": "buf generate --template buf.gen.swift.yaml --output=./src", + "generate": "npm run generate-go && npm run generate-js && npm run generate-py" + }, "keywords": [], "author": "", "license": "", - "dependencies": { - "grpc-tools": "^1.11.2", - "ts-protoc-gen": "^0.15.0" + "devDependencies": { + "@bufbuild/buf": "^1.18.0-1" } -} \ No newline at end of file +} diff --git a/pyproject.toml b/pyproject.toml new file mode 100644 index 0000000..5c1f747 --- /dev/null +++ b/pyproject.toml @@ -0,0 +1,166 @@ +[build-system] +requires = ["hatchling"] +build-backend = "hatchling.build" + +[project] +name = "stability-api" +dynamic = ["version"] +description = 'Interfaces for interacting with low level Stability AI APIs' +readme = "README.md" +requires-python = ">=3.7" +license = "MIT" +keywords = [] +authors = [ + { name = "Stephan Auerhahn", email = "stephan@stability.ai" }, +] +classifiers = [ + "Development Status :: 4 - Beta", + "Programming Language :: Python", + "Programming Language :: Python :: 3.7", + "Programming Language :: Python :: 3.8", + "Programming Language :: Python :: 3.9", + "Programming Language :: Python :: 3.10", + "Programming Language :: Python :: 3.11", + "Programming Language :: Python :: Implementation :: CPython", + "Programming Language :: Python :: Implementation :: PyPy", +] +dependencies = [ + "protobuf>=3.17.3", +] + +[project.urls] +Documentation = "https://github.com/Stability-AI/api-interfaces#readme" +Issues = "https://github.com/Stability-AI/api-interfaces/issues" +Source = "https://github.com/Stability-AI/api-interfaces" + +[tool.hatch.version] +path = "src/stability_api/__about__.py" + +[tool.hatch.build.targets.wheel] +include = ["src/stability_api"] + +[tool.hatch.build.targets.wheel.force-include] +"src/stability_api" = "stability_api" + +[tool.hatch.envs.default] +dependencies = [ + "coverage[toml]>=6.5", + "pytest", +] +[tool.hatch.envs.default.scripts] +generate = "npm run generate-py" +test = "pytest {args:tests}" +test-cov = "coverage run -m pytest {args:tests}" +cov-report = [ + "- coverage combine", + "coverage report", +] +cov = [ + "test-cov", + "cov-report", +] + +[[tool.hatch.envs.all.matrix]] +python = ["3.7", "3.8", "3.9", "3.10", "3.11"] + +[tool.hatch.envs.lint] +detached = true +dependencies = [ + "black>=23.1.0", + "mypy>=1.0.0", + "ruff>=0.0.243", +] +[tool.hatch.envs.lint.scripts] +typing = "mypy --install-types --non-interactive {args:src/stability_api tests}" +style = [ + "ruff {args:.}", + "black --check --diff {args:.}", +] +fmt = [ + "black {args:.}", + "ruff --fix {args:.}", + "style", +] +all = [ + "style", + "typing", +] + +[tool.black] +target-version = ["py37"] +line-length = 120 +skip-string-normalization = true + +[tool.ruff] +target-version = "py37" +line-length = 120 +select = [ + "A", + "ARG", + "B", + "C", + "DTZ", + "E", + "EM", + "F", + "FBT", + "I", + "ICN", + "ISC", + "N", + "PLC", + "PLE", + "PLR", + "PLW", + "Q", + "RUF", + "S", + "T", + "TID", + "UP", + "W", + "YTT", +] +ignore = [ + # Allow non-abstract empty methods in abstract base classes + "B027", + # Allow boolean positional values in function calls, like `dict.get(... True)` + "FBT003", + # Ignore checks for possible passwords + "S105", "S106", "S107", + # Ignore complexity + "C901", "PLR0911", "PLR0912", "PLR0913", "PLR0915", +] +unfixable = [ + # Don't touch unused imports + "F401", +] + +[tool.ruff.isort] +known-first-party = ["stability_api"] + +[tool.ruff.flake8-tidy-imports] +ban-relative-imports = "all" + +[tool.ruff.per-file-ignores] +# Tests can use magic values, assertions, and relative imports +"tests/**/*" = ["PLR2004", "S101", "TID252"] + +[tool.coverage.run] +source_pkgs = ["stability_api", "tests"] +branch = true +parallel = true +omit = [ + "src/stability_api/__about__.py", +] + +[tool.coverage.paths] +stability_api = ["src/stability_api", "*/stability-api/src/stability_api"] +tests = ["tests", "*/stability-api/tests"] + +[tool.coverage.report] +exclude_lines = [ + "no cov", + "if __name__ == .__main__.:", + "if TYPE_CHECKING:", +] diff --git a/src/js/main.js b/src/js/main.js new file mode 100644 index 0000000..e69de29 diff --git a/src/proto/dashboard.proto b/src/proto/stability_api/platform/dashboard/v1/dashboard.proto similarity index 96% rename from src/proto/dashboard.proto rename to src/proto/stability_api/platform/dashboard/v1/dashboard.proto index a22af5e..4825b08 100644 --- a/src/proto/dashboard.proto +++ b/src/proto/stability_api/platform/dashboard/v1/dashboard.proto @@ -1,6 +1,6 @@ syntax = 'proto3'; -package gooseai; -option go_package = "github.com/stability-ai/api-interfaces/gooseai/dashboard"; +package stabilityai.api.dashboard.v1; +option go_package = "github.com/stability-ai/api-interfaces/gen/proto/go/stability_api/platform/dashboard/v1;dashboardv1"; enum OrganizationRole { MEMBER = 0; diff --git a/src/proto/engines.proto b/src/proto/stability_api/platform/engines/v1/engines.proto similarity index 81% rename from src/proto/engines.proto rename to src/proto/stability_api/platform/engines/v1/engines.proto index e02e1d1..76039e3 100644 --- a/src/proto/engines.proto +++ b/src/proto/stability_api/platform/engines/v1/engines.proto @@ -1,6 +1,6 @@ syntax = 'proto3'; -package gooseai; -option go_package = "github.com/stability-ai/api-interfaces/gooseai/engines"; +package stabilityai.platformapis.engines.v1; +option go_package = "github.com/stability-ai/api-interfaces/gen/proto/go/stability_api/platform/engines/v1;enginesv1"; // Possible engine type enum EngineType { diff --git a/src/proto/finetuning.proto b/src/proto/stability_api/platform/finetuning/finetuning.proto similarity index 100% rename from src/proto/finetuning.proto rename to src/proto/stability_api/platform/finetuning/finetuning.proto diff --git a/src/proto/generation.proto b/src/proto/stability_api/platform/generation/v1/generation.proto similarity index 98% rename from src/proto/generation.proto rename to src/proto/stability_api/platform/generation/v1/generation.proto index cb0af9a..9ec1eaf 100644 --- a/src/proto/generation.proto +++ b/src/proto/stability_api/platform/generation/v1/generation.proto @@ -1,8 +1,8 @@ syntax = 'proto3'; -package gooseai; -option go_package = "github.com/stability-ai/api-interfaces/gooseai/generation"; +package stabilityai.platformapis.generation.v1; +option go_package = "github.com/stability-ai/api-interfaces/gen/proto/go/stability_api/platform/generation/v1;generationv1"; import "google/protobuf/struct.proto"; -import "tensors.proto"; +import "stability_api/tensors/tensors.proto"; enum FinishReason { NULL = 0; diff --git a/src/proto/project.proto b/src/proto/stability_api/platform/project/v1/project.proto similarity index 96% rename from src/proto/project.proto rename to src/proto/stability_api/platform/project/v1/project.proto index e6f773a..6001267 100644 --- a/src/proto/project.proto +++ b/src/proto/stability_api/platform/project/v1/project.proto @@ -1,7 +1,7 @@ syntax = 'proto3'; -package gooseai; -option go_package = "github.com/stability-ai/api-interfaces/gooseai/project"; -import "generation.proto"; +package stabilityai.platformapis.project.v1; +option go_package = "github.com/stability-ai/api-interfaces/gen/proto/go/stability_api/platform/project/v1;projectv1"; +import "stability_api/platform/generation/v1/generation.proto"; enum ProjectAccess { PROJECT_ACCESS_PRIVATE = 0; // Private access, only owner organization can access @@ -42,7 +42,7 @@ message ProjectAsset { uint64 size = 5; // The asset size in bytes uint64 created_at = 6; // Time of asset creation (UTC seconds epoch) uint64 updated_at = 7; // Time of last asset update (UTC seconds epoch) - Request request = 8; // The request object that is associated with the artifact + stabilityai.platformapis.generation.v1.Request request = 8; // The request object that is associated with the artifact map tags = 9; // The tags associated with the asset } diff --git a/src/proto/stability_api/tensors/tensors.proto b/src/proto/stability_api/tensors/tensors.proto new file mode 100644 index 0000000..26c5e05 --- /dev/null +++ b/src/proto/stability_api/tensors/tensors.proto @@ -0,0 +1,54 @@ +syntax = 'proto3'; +package tensors; +option go_package = "github.com/coreweave/tensorizer/tensors"; + +enum Dtype { + DT_INVALID = 0; + DT_FLOAT32 = 1; + DT_FLOAT64 = 2; + DT_FLOAT16 = 3; + DT_BFLOAT16 = 4; + DT_COMPLEX32 = 5; + DT_COMPLEX64 = 6; + DT_COMPLEX128 = 7; + DT_UINT8 = 8; + DT_INT8 = 9; + DT_INT16 = 10; + DT_INT32 = 11; + DT_INT64 = 12; + DT_BOOL = 13; + DT_QUINT8 = 14; + DT_QINT8 = 15; + DT_QINT32 = 16; + DT_QUINT4_2 = 17; +} + +enum AttributeType { + AT_PARAMETER = 0; + AT_BUFFER = 1; +} + +message Tensor { + Dtype dtype = 1; + repeated int64 shape = 2; + bytes data = 3; + optional AttributeType attr_type = 4; +} + +message Attribute { + string name = 1; + oneof value { + Module module = 3; + Tensor tensor = 4; + string string = 5; + int64 int64 = 6; + float float = 7; + bool bool = 8; + } +} + +message Module { + string name = 1; + repeated string names = 2; + repeated Attribute attributes = 3; +} diff --git a/src/stability_api/__about__.py b/src/stability_api/__about__.py new file mode 100644 index 0000000..b66be8d --- /dev/null +++ b/src/stability_api/__about__.py @@ -0,0 +1 @@ +__version__ = "0.1.1.dev0" \ No newline at end of file diff --git a/src/stability_api/go.mod b/src/stability_api/go.mod new file mode 100644 index 0000000..136f93b --- /dev/null +++ b/src/stability_api/go.mod @@ -0,0 +1,17 @@ +module github.com/stability-ai/api-interfaces/src/stability_api + +go 1.18 + +require ( + connectrpc.com/connect v1.11.0 + google.golang.org/grpc v1.54.0 + google.golang.org/protobuf v1.30.0 +) + +require ( + github.com/golang/protobuf v1.5.2 // indirect + golang.org/x/net v0.8.0 // indirect + golang.org/x/sys v0.6.0 // indirect + golang.org/x/text v0.8.0 // indirect + google.golang.org/genproto v0.0.0-20230110181048-76db0878b65f // indirect +) diff --git a/src/stability_api/go.sum b/src/stability_api/go.sum new file mode 100644 index 0000000..5289a28 --- /dev/null +++ b/src/stability_api/go.sum @@ -0,0 +1,22 @@ +github.com/bufbuild/connect-go v1.7.0 h1:MGp82v7SCza+3RhsVhV7aMikwxvI3ZfD72YiGt8FYJo= +github.com/bufbuild/connect-go v1.7.0/go.mod h1:GmMJYR6orFqD0Y6ZgX8pwQ8j9baizDrIQMm1/a6LnHk= +github.com/golang/protobuf v1.5.0/go.mod h1:FsONVRAS9T7sI+LIUmWTfcYkHO4aIWwzhcaSAoJOfIk= +github.com/golang/protobuf v1.5.2 h1:ROPKBNFfQgOUMifHyP+KYbvpjbdoFNs+aK7DXlji0Tw= +github.com/golang/protobuf v1.5.2/go.mod h1:XVQd3VNwM+JqD3oG2Ue2ip4fOMUkwXdXDdiuN0vRsmY= +github.com/google/go-cmp v0.5.5/go.mod h1:v8dTdLbMG2kIc/vJvl+f65V22dbkXbowE6jgT/gNBxE= +github.com/google/go-cmp v0.5.9 h1:O2Tfq5qg4qc4AmwVlvv0oLiVAGB7enBSJ2x2DqQFi38= +golang.org/x/net v0.8.0 h1:Zrh2ngAOFYneWTAIAPethzeaQLuHwhuBkuV6ZiRnUaQ= +golang.org/x/net v0.8.0/go.mod h1:QVkue5JL9kW//ek3r6jTKnTFis1tRmNAW2P1shuFdJc= +golang.org/x/sys v0.6.0 h1:MVltZSvRTcU2ljQOhs94SXPftV6DCNnZViHeQps87pQ= +golang.org/x/sys v0.6.0/go.mod h1:oPkhp1MJrh7nUepCBck5+mAzfO9JrbApNNgaTdGDITg= +golang.org/x/text v0.8.0 h1:57P1ETyNKtuIjB4SRd15iJxuhj8Gc416Y78H3qgMh68= +golang.org/x/text v0.8.0/go.mod h1:e1OnstbJyHTd6l/uOt8jFFHp6TRDWZR/bV3emEE/zU8= +golang.org/x/xerrors v0.0.0-20191204190536-9bdfabe68543/go.mod h1:I/5z698sn9Ka8TeJc9MKroUUfqBBauWjQqLJ2OPfmY0= +google.golang.org/genproto v0.0.0-20230110181048-76db0878b65f h1:BWUVssLB0HVOSY78gIdvk1dTVYtT1y8SBWtPYuTJ/6w= +google.golang.org/genproto v0.0.0-20230110181048-76db0878b65f/go.mod h1:RGgjbofJ8xD9Sq1VVhDM1Vok1vRONV+rg+CjzG4SZKM= +google.golang.org/grpc v1.54.0 h1:EhTqbhiYeixwWQtAEZAxmV9MGqcjEU2mFx52xCzNyag= +google.golang.org/grpc v1.54.0/go.mod h1:PUSEXI6iWghWaB6lXM4knEgpJNu2qUcKfDtNci3EC2g= +google.golang.org/protobuf v1.26.0-rc.1/go.mod h1:jlhhOSvTdKEhbULTjvd4ARK9grFBp09yW+WbY/TyQbw= +google.golang.org/protobuf v1.26.0/go.mod h1:9q0QmTI4eRPtz6boOQmLYwt+qCgq0jsYwAQnmE0givc= +google.golang.org/protobuf v1.30.0 h1:kPPoIgf3TsEvrm0PFe15JQ+570QVxYzEvvHqChK+cng= +google.golang.org/protobuf v1.30.0/go.mod h1:HV8QOd/L58Z+nl8r43ehVNZIU/HEI6OcFqwMG9pJV4I= diff --git a/src/stability_api/index.js b/src/stability_api/index.js new file mode 100644 index 0000000..e69de29 diff --git a/src/stability_api/platform/dashboard/v1/dashboard.pb.go b/src/stability_api/platform/dashboard/v1/dashboard.pb.go new file mode 100644 index 0000000..0422600 --- /dev/null +++ b/src/stability_api/platform/dashboard/v1/dashboard.pb.go @@ -0,0 +1,2664 @@ +// Code generated by protoc-gen-go. DO NOT EDIT. +// versions: +// protoc-gen-go v1.31.0 +// protoc (unknown) +// source: stability_api/platform/dashboard/v1/dashboard.proto + +package dashboardv1 + +import ( + protoreflect "google.golang.org/protobuf/reflect/protoreflect" + protoimpl "google.golang.org/protobuf/runtime/protoimpl" + reflect "reflect" + sync "sync" +) + +const ( + // Verify that this generated code is sufficiently up-to-date. + _ = protoimpl.EnforceVersion(20 - protoimpl.MinVersion) + // Verify that runtime/protoimpl is sufficiently up-to-date. + _ = protoimpl.EnforceVersion(protoimpl.MaxVersion - 20) +) + +type OrganizationRole int32 + +const ( + OrganizationRole_MEMBER OrganizationRole = 0 + OrganizationRole_ACCOUNTANT OrganizationRole = 1 + OrganizationRole_OWNER OrganizationRole = 2 +) + +// Enum value maps for OrganizationRole. +var ( + OrganizationRole_name = map[int32]string{ + 0: "MEMBER", + 1: "ACCOUNTANT", + 2: "OWNER", + } + OrganizationRole_value = map[string]int32{ + "MEMBER": 0, + "ACCOUNTANT": 1, + "OWNER": 2, + } +) + +func (x OrganizationRole) Enum() *OrganizationRole { + p := new(OrganizationRole) + *p = x + return p +} + +func (x OrganizationRole) String() string { + return protoimpl.X.EnumStringOf(x.Descriptor(), protoreflect.EnumNumber(x)) +} + +func (OrganizationRole) Descriptor() protoreflect.EnumDescriptor { + return file_stability_api_platform_dashboard_v1_dashboard_proto_enumTypes[0].Descriptor() +} + +func (OrganizationRole) Type() protoreflect.EnumType { + return &file_stability_api_platform_dashboard_v1_dashboard_proto_enumTypes[0] +} + +func (x OrganizationRole) Number() protoreflect.EnumNumber { + return protoreflect.EnumNumber(x) +} + +// Deprecated: Use OrganizationRole.Descriptor instead. +func (OrganizationRole) EnumDescriptor() ([]byte, []int) { + return file_stability_api_platform_dashboard_v1_dashboard_proto_rawDescGZIP(), []int{0} +} + +type OrganizationMember struct { + state protoimpl.MessageState + sizeCache protoimpl.SizeCache + unknownFields protoimpl.UnknownFields + + Organization *Organization `protobuf:"bytes,1,opt,name=organization,proto3" json:"organization,omitempty"` + User *User `protobuf:"bytes,2,opt,name=user,proto3,oneof" json:"user,omitempty"` + Role OrganizationRole `protobuf:"varint,3,opt,name=role,proto3,enum=stabilityai.api.dashboard.v1.OrganizationRole" json:"role,omitempty"` + IsDefault bool `protobuf:"varint,4,opt,name=is_default,json=isDefault,proto3" json:"is_default,omitempty"` +} + +func (x *OrganizationMember) Reset() { + *x = OrganizationMember{} + if protoimpl.UnsafeEnabled { + mi := &file_stability_api_platform_dashboard_v1_dashboard_proto_msgTypes[0] + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + ms.StoreMessageInfo(mi) + } +} + +func (x *OrganizationMember) String() string { + return protoimpl.X.MessageStringOf(x) +} + +func (*OrganizationMember) ProtoMessage() {} + +func (x *OrganizationMember) ProtoReflect() protoreflect.Message { + mi := &file_stability_api_platform_dashboard_v1_dashboard_proto_msgTypes[0] + if protoimpl.UnsafeEnabled && x != nil { + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + if ms.LoadMessageInfo() == nil { + ms.StoreMessageInfo(mi) + } + return ms + } + return mi.MessageOf(x) +} + +// Deprecated: Use OrganizationMember.ProtoReflect.Descriptor instead. +func (*OrganizationMember) Descriptor() ([]byte, []int) { + return file_stability_api_platform_dashboard_v1_dashboard_proto_rawDescGZIP(), []int{0} +} + +func (x *OrganizationMember) GetOrganization() *Organization { + if x != nil { + return x.Organization + } + return nil +} + +func (x *OrganizationMember) GetUser() *User { + if x != nil { + return x.User + } + return nil +} + +func (x *OrganizationMember) GetRole() OrganizationRole { + if x != nil { + return x.Role + } + return OrganizationRole_MEMBER +} + +func (x *OrganizationMember) GetIsDefault() bool { + if x != nil { + return x.IsDefault + } + return false +} + +type OrganizationGrant struct { + state protoimpl.MessageState + sizeCache protoimpl.SizeCache + unknownFields protoimpl.UnknownFields + + AmountGranted float64 `protobuf:"fixed64,1,opt,name=amount_granted,json=amountGranted,proto3" json:"amount_granted,omitempty"` + AmountUsed float64 `protobuf:"fixed64,2,opt,name=amount_used,json=amountUsed,proto3" json:"amount_used,omitempty"` + ExpiresAt uint64 `protobuf:"varint,3,opt,name=expires_at,json=expiresAt,proto3" json:"expires_at,omitempty"` + GrantedAt uint64 `protobuf:"varint,4,opt,name=granted_at,json=grantedAt,proto3" json:"granted_at,omitempty"` +} + +func (x *OrganizationGrant) Reset() { + *x = OrganizationGrant{} + if protoimpl.UnsafeEnabled { + mi := &file_stability_api_platform_dashboard_v1_dashboard_proto_msgTypes[1] + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + ms.StoreMessageInfo(mi) + } +} + +func (x *OrganizationGrant) String() string { + return protoimpl.X.MessageStringOf(x) +} + +func (*OrganizationGrant) ProtoMessage() {} + +func (x *OrganizationGrant) ProtoReflect() protoreflect.Message { + mi := &file_stability_api_platform_dashboard_v1_dashboard_proto_msgTypes[1] + if protoimpl.UnsafeEnabled && x != nil { + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + if ms.LoadMessageInfo() == nil { + ms.StoreMessageInfo(mi) + } + return ms + } + return mi.MessageOf(x) +} + +// Deprecated: Use OrganizationGrant.ProtoReflect.Descriptor instead. +func (*OrganizationGrant) Descriptor() ([]byte, []int) { + return file_stability_api_platform_dashboard_v1_dashboard_proto_rawDescGZIP(), []int{1} +} + +func (x *OrganizationGrant) GetAmountGranted() float64 { + if x != nil { + return x.AmountGranted + } + return 0 +} + +func (x *OrganizationGrant) GetAmountUsed() float64 { + if x != nil { + return x.AmountUsed + } + return 0 +} + +func (x *OrganizationGrant) GetExpiresAt() uint64 { + if x != nil { + return x.ExpiresAt + } + return 0 +} + +func (x *OrganizationGrant) GetGrantedAt() uint64 { + if x != nil { + return x.GrantedAt + } + return 0 +} + +type OrganizationPaymentInfo struct { + state protoimpl.MessageState + sizeCache protoimpl.SizeCache + unknownFields protoimpl.UnknownFields + + Balance float64 `protobuf:"fixed64,1,opt,name=balance,proto3" json:"balance,omitempty"` + Grants []*OrganizationGrant `protobuf:"bytes,2,rep,name=grants,proto3" json:"grants,omitempty"` +} + +func (x *OrganizationPaymentInfo) Reset() { + *x = OrganizationPaymentInfo{} + if protoimpl.UnsafeEnabled { + mi := &file_stability_api_platform_dashboard_v1_dashboard_proto_msgTypes[2] + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + ms.StoreMessageInfo(mi) + } +} + +func (x *OrganizationPaymentInfo) String() string { + return protoimpl.X.MessageStringOf(x) +} + +func (*OrganizationPaymentInfo) ProtoMessage() {} + +func (x *OrganizationPaymentInfo) ProtoReflect() protoreflect.Message { + mi := &file_stability_api_platform_dashboard_v1_dashboard_proto_msgTypes[2] + if protoimpl.UnsafeEnabled && x != nil { + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + if ms.LoadMessageInfo() == nil { + ms.StoreMessageInfo(mi) + } + return ms + } + return mi.MessageOf(x) +} + +// Deprecated: Use OrganizationPaymentInfo.ProtoReflect.Descriptor instead. +func (*OrganizationPaymentInfo) Descriptor() ([]byte, []int) { + return file_stability_api_platform_dashboard_v1_dashboard_proto_rawDescGZIP(), []int{2} +} + +func (x *OrganizationPaymentInfo) GetBalance() float64 { + if x != nil { + return x.Balance + } + return 0 +} + +func (x *OrganizationPaymentInfo) GetGrants() []*OrganizationGrant { + if x != nil { + return x.Grants + } + return nil +} + +type OrganizationAutoCharge struct { + state protoimpl.MessageState + sizeCache protoimpl.SizeCache + unknownFields protoimpl.UnknownFields + + Enabled bool `protobuf:"varint,1,opt,name=enabled,proto3" json:"enabled,omitempty"` + Id string `protobuf:"bytes,2,opt,name=id,proto3" json:"id,omitempty"` + CreatedAt uint64 `protobuf:"varint,3,opt,name=created_at,json=createdAt,proto3" json:"created_at,omitempty"` +} + +func (x *OrganizationAutoCharge) Reset() { + *x = OrganizationAutoCharge{} + if protoimpl.UnsafeEnabled { + mi := &file_stability_api_platform_dashboard_v1_dashboard_proto_msgTypes[3] + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + ms.StoreMessageInfo(mi) + } +} + +func (x *OrganizationAutoCharge) String() string { + return protoimpl.X.MessageStringOf(x) +} + +func (*OrganizationAutoCharge) ProtoMessage() {} + +func (x *OrganizationAutoCharge) ProtoReflect() protoreflect.Message { + mi := &file_stability_api_platform_dashboard_v1_dashboard_proto_msgTypes[3] + if protoimpl.UnsafeEnabled && x != nil { + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + if ms.LoadMessageInfo() == nil { + ms.StoreMessageInfo(mi) + } + return ms + } + return mi.MessageOf(x) +} + +// Deprecated: Use OrganizationAutoCharge.ProtoReflect.Descriptor instead. +func (*OrganizationAutoCharge) Descriptor() ([]byte, []int) { + return file_stability_api_platform_dashboard_v1_dashboard_proto_rawDescGZIP(), []int{3} +} + +func (x *OrganizationAutoCharge) GetEnabled() bool { + if x != nil { + return x.Enabled + } + return false +} + +func (x *OrganizationAutoCharge) GetId() string { + if x != nil { + return x.Id + } + return "" +} + +func (x *OrganizationAutoCharge) GetCreatedAt() uint64 { + if x != nil { + return x.CreatedAt + } + return 0 +} + +type Organization struct { + state protoimpl.MessageState + sizeCache protoimpl.SizeCache + unknownFields protoimpl.UnknownFields + + Id string `protobuf:"bytes,1,opt,name=id,proto3" json:"id,omitempty"` + Name string `protobuf:"bytes,2,opt,name=name,proto3" json:"name,omitempty"` + Description string `protobuf:"bytes,3,opt,name=description,proto3" json:"description,omitempty"` + Members []*OrganizationMember `protobuf:"bytes,4,rep,name=members,proto3" json:"members,omitempty"` + PaymentInfo *OrganizationPaymentInfo `protobuf:"bytes,5,opt,name=payment_info,json=paymentInfo,proto3,oneof" json:"payment_info,omitempty"` + StripeCustomerId *string `protobuf:"bytes,6,opt,name=stripe_customer_id,json=stripeCustomerId,proto3,oneof" json:"stripe_customer_id,omitempty"` + AutoCharge *OrganizationAutoCharge `protobuf:"bytes,7,opt,name=auto_charge,json=autoCharge,proto3,oneof" json:"auto_charge,omitempty"` +} + +func (x *Organization) Reset() { + *x = Organization{} + if protoimpl.UnsafeEnabled { + mi := &file_stability_api_platform_dashboard_v1_dashboard_proto_msgTypes[4] + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + ms.StoreMessageInfo(mi) + } +} + +func (x *Organization) String() string { + return protoimpl.X.MessageStringOf(x) +} + +func (*Organization) ProtoMessage() {} + +func (x *Organization) ProtoReflect() protoreflect.Message { + mi := &file_stability_api_platform_dashboard_v1_dashboard_proto_msgTypes[4] + if protoimpl.UnsafeEnabled && x != nil { + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + if ms.LoadMessageInfo() == nil { + ms.StoreMessageInfo(mi) + } + return ms + } + return mi.MessageOf(x) +} + +// Deprecated: Use Organization.ProtoReflect.Descriptor instead. +func (*Organization) Descriptor() ([]byte, []int) { + return file_stability_api_platform_dashboard_v1_dashboard_proto_rawDescGZIP(), []int{4} +} + +func (x *Organization) GetId() string { + if x != nil { + return x.Id + } + return "" +} + +func (x *Organization) GetName() string { + if x != nil { + return x.Name + } + return "" +} + +func (x *Organization) GetDescription() string { + if x != nil { + return x.Description + } + return "" +} + +func (x *Organization) GetMembers() []*OrganizationMember { + if x != nil { + return x.Members + } + return nil +} + +func (x *Organization) GetPaymentInfo() *OrganizationPaymentInfo { + if x != nil { + return x.PaymentInfo + } + return nil +} + +func (x *Organization) GetStripeCustomerId() string { + if x != nil && x.StripeCustomerId != nil { + return *x.StripeCustomerId + } + return "" +} + +func (x *Organization) GetAutoCharge() *OrganizationAutoCharge { + if x != nil { + return x.AutoCharge + } + return nil +} + +type APIKey struct { + state protoimpl.MessageState + sizeCache protoimpl.SizeCache + unknownFields protoimpl.UnknownFields + + Key string `protobuf:"bytes,1,opt,name=key,proto3" json:"key,omitempty"` + IsSecret bool `protobuf:"varint,2,opt,name=is_secret,json=isSecret,proto3" json:"is_secret,omitempty"` + CreatedAt uint64 `protobuf:"varint,3,opt,name=created_at,json=createdAt,proto3" json:"created_at,omitempty"` +} + +func (x *APIKey) Reset() { + *x = APIKey{} + if protoimpl.UnsafeEnabled { + mi := &file_stability_api_platform_dashboard_v1_dashboard_proto_msgTypes[5] + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + ms.StoreMessageInfo(mi) + } +} + +func (x *APIKey) String() string { + return protoimpl.X.MessageStringOf(x) +} + +func (*APIKey) ProtoMessage() {} + +func (x *APIKey) ProtoReflect() protoreflect.Message { + mi := &file_stability_api_platform_dashboard_v1_dashboard_proto_msgTypes[5] + if protoimpl.UnsafeEnabled && x != nil { + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + if ms.LoadMessageInfo() == nil { + ms.StoreMessageInfo(mi) + } + return ms + } + return mi.MessageOf(x) +} + +// Deprecated: Use APIKey.ProtoReflect.Descriptor instead. +func (*APIKey) Descriptor() ([]byte, []int) { + return file_stability_api_platform_dashboard_v1_dashboard_proto_rawDescGZIP(), []int{5} +} + +func (x *APIKey) GetKey() string { + if x != nil { + return x.Key + } + return "" +} + +func (x *APIKey) GetIsSecret() bool { + if x != nil { + return x.IsSecret + } + return false +} + +func (x *APIKey) GetCreatedAt() uint64 { + if x != nil { + return x.CreatedAt + } + return 0 +} + +type User struct { + state protoimpl.MessageState + sizeCache protoimpl.SizeCache + unknownFields protoimpl.UnknownFields + + Id string `protobuf:"bytes,1,opt,name=id,proto3" json:"id,omitempty"` + AuthId *string `protobuf:"bytes,2,opt,name=auth_id,json=authId,proto3,oneof" json:"auth_id,omitempty"` + ProfilePicture string `protobuf:"bytes,3,opt,name=profile_picture,json=profilePicture,proto3" json:"profile_picture,omitempty"` + Email string `protobuf:"bytes,4,opt,name=email,proto3" json:"email,omitempty"` + Organizations []*OrganizationMember `protobuf:"bytes,5,rep,name=organizations,proto3" json:"organizations,omitempty"` + ApiKeys []*APIKey `protobuf:"bytes,7,rep,name=api_keys,json=apiKeys,proto3" json:"api_keys,omitempty"` + CreatedAt uint64 `protobuf:"varint,8,opt,name=created_at,json=createdAt,proto3" json:"created_at,omitempty"` + EmailVerified *bool `protobuf:"varint,9,opt,name=email_verified,json=emailVerified,proto3,oneof" json:"email_verified,omitempty"` +} + +func (x *User) Reset() { + *x = User{} + if protoimpl.UnsafeEnabled { + mi := &file_stability_api_platform_dashboard_v1_dashboard_proto_msgTypes[6] + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + ms.StoreMessageInfo(mi) + } +} + +func (x *User) String() string { + return protoimpl.X.MessageStringOf(x) +} + +func (*User) ProtoMessage() {} + +func (x *User) ProtoReflect() protoreflect.Message { + mi := &file_stability_api_platform_dashboard_v1_dashboard_proto_msgTypes[6] + if protoimpl.UnsafeEnabled && x != nil { + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + if ms.LoadMessageInfo() == nil { + ms.StoreMessageInfo(mi) + } + return ms + } + return mi.MessageOf(x) +} + +// Deprecated: Use User.ProtoReflect.Descriptor instead. +func (*User) Descriptor() ([]byte, []int) { + return file_stability_api_platform_dashboard_v1_dashboard_proto_rawDescGZIP(), []int{6} +} + +func (x *User) GetId() string { + if x != nil { + return x.Id + } + return "" +} + +func (x *User) GetAuthId() string { + if x != nil && x.AuthId != nil { + return *x.AuthId + } + return "" +} + +func (x *User) GetProfilePicture() string { + if x != nil { + return x.ProfilePicture + } + return "" +} + +func (x *User) GetEmail() string { + if x != nil { + return x.Email + } + return "" +} + +func (x *User) GetOrganizations() []*OrganizationMember { + if x != nil { + return x.Organizations + } + return nil +} + +func (x *User) GetApiKeys() []*APIKey { + if x != nil { + return x.ApiKeys + } + return nil +} + +func (x *User) GetCreatedAt() uint64 { + if x != nil { + return x.CreatedAt + } + return 0 +} + +func (x *User) GetEmailVerified() bool { + if x != nil && x.EmailVerified != nil { + return *x.EmailVerified + } + return false +} + +type CostData struct { + state protoimpl.MessageState + sizeCache protoimpl.SizeCache + unknownFields protoimpl.UnknownFields + + AmountTokens uint32 `protobuf:"varint,1,opt,name=amount_tokens,json=amountTokens,proto3" json:"amount_tokens,omitempty"` + AmountCredits float64 `protobuf:"fixed64,2,opt,name=amount_credits,json=amountCredits,proto3" json:"amount_credits,omitempty"` +} + +func (x *CostData) Reset() { + *x = CostData{} + if protoimpl.UnsafeEnabled { + mi := &file_stability_api_platform_dashboard_v1_dashboard_proto_msgTypes[7] + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + ms.StoreMessageInfo(mi) + } +} + +func (x *CostData) String() string { + return protoimpl.X.MessageStringOf(x) +} + +func (*CostData) ProtoMessage() {} + +func (x *CostData) ProtoReflect() protoreflect.Message { + mi := &file_stability_api_platform_dashboard_v1_dashboard_proto_msgTypes[7] + if protoimpl.UnsafeEnabled && x != nil { + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + if ms.LoadMessageInfo() == nil { + ms.StoreMessageInfo(mi) + } + return ms + } + return mi.MessageOf(x) +} + +// Deprecated: Use CostData.ProtoReflect.Descriptor instead. +func (*CostData) Descriptor() ([]byte, []int) { + return file_stability_api_platform_dashboard_v1_dashboard_proto_rawDescGZIP(), []int{7} +} + +func (x *CostData) GetAmountTokens() uint32 { + if x != nil { + return x.AmountTokens + } + return 0 +} + +func (x *CostData) GetAmountCredits() float64 { + if x != nil { + return x.AmountCredits + } + return 0 +} + +type UsageMetric struct { + state protoimpl.MessageState + sizeCache protoimpl.SizeCache + unknownFields protoimpl.UnknownFields + + Operation string `protobuf:"bytes,1,opt,name=operation,proto3" json:"operation,omitempty"` + Engine string `protobuf:"bytes,2,opt,name=engine,proto3" json:"engine,omitempty"` + InputCost *CostData `protobuf:"bytes,3,opt,name=input_cost,json=inputCost,proto3" json:"input_cost,omitempty"` + OutputCost *CostData `protobuf:"bytes,4,opt,name=output_cost,json=outputCost,proto3" json:"output_cost,omitempty"` + User *string `protobuf:"bytes,5,opt,name=user,proto3,oneof" json:"user,omitempty"` + AggregationTimestamp uint64 `protobuf:"varint,6,opt,name=aggregation_timestamp,json=aggregationTimestamp,proto3" json:"aggregation_timestamp,omitempty"` +} + +func (x *UsageMetric) Reset() { + *x = UsageMetric{} + if protoimpl.UnsafeEnabled { + mi := &file_stability_api_platform_dashboard_v1_dashboard_proto_msgTypes[8] + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + ms.StoreMessageInfo(mi) + } +} + +func (x *UsageMetric) String() string { + return protoimpl.X.MessageStringOf(x) +} + +func (*UsageMetric) ProtoMessage() {} + +func (x *UsageMetric) ProtoReflect() protoreflect.Message { + mi := &file_stability_api_platform_dashboard_v1_dashboard_proto_msgTypes[8] + if protoimpl.UnsafeEnabled && x != nil { + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + if ms.LoadMessageInfo() == nil { + ms.StoreMessageInfo(mi) + } + return ms + } + return mi.MessageOf(x) +} + +// Deprecated: Use UsageMetric.ProtoReflect.Descriptor instead. +func (*UsageMetric) Descriptor() ([]byte, []int) { + return file_stability_api_platform_dashboard_v1_dashboard_proto_rawDescGZIP(), []int{8} +} + +func (x *UsageMetric) GetOperation() string { + if x != nil { + return x.Operation + } + return "" +} + +func (x *UsageMetric) GetEngine() string { + if x != nil { + return x.Engine + } + return "" +} + +func (x *UsageMetric) GetInputCost() *CostData { + if x != nil { + return x.InputCost + } + return nil +} + +func (x *UsageMetric) GetOutputCost() *CostData { + if x != nil { + return x.OutputCost + } + return nil +} + +func (x *UsageMetric) GetUser() string { + if x != nil && x.User != nil { + return *x.User + } + return "" +} + +func (x *UsageMetric) GetAggregationTimestamp() uint64 { + if x != nil { + return x.AggregationTimestamp + } + return 0 +} + +type CostTotal struct { + state protoimpl.MessageState + sizeCache protoimpl.SizeCache + unknownFields protoimpl.UnknownFields + + AmountTokens uint32 `protobuf:"varint,1,opt,name=amount_tokens,json=amountTokens,proto3" json:"amount_tokens,omitempty"` + AmountCredits float64 `protobuf:"fixed64,2,opt,name=amount_credits,json=amountCredits,proto3" json:"amount_credits,omitempty"` +} + +func (x *CostTotal) Reset() { + *x = CostTotal{} + if protoimpl.UnsafeEnabled { + mi := &file_stability_api_platform_dashboard_v1_dashboard_proto_msgTypes[9] + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + ms.StoreMessageInfo(mi) + } +} + +func (x *CostTotal) String() string { + return protoimpl.X.MessageStringOf(x) +} + +func (*CostTotal) ProtoMessage() {} + +func (x *CostTotal) ProtoReflect() protoreflect.Message { + mi := &file_stability_api_platform_dashboard_v1_dashboard_proto_msgTypes[9] + if protoimpl.UnsafeEnabled && x != nil { + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + if ms.LoadMessageInfo() == nil { + ms.StoreMessageInfo(mi) + } + return ms + } + return mi.MessageOf(x) +} + +// Deprecated: Use CostTotal.ProtoReflect.Descriptor instead. +func (*CostTotal) Descriptor() ([]byte, []int) { + return file_stability_api_platform_dashboard_v1_dashboard_proto_rawDescGZIP(), []int{9} +} + +func (x *CostTotal) GetAmountTokens() uint32 { + if x != nil { + return x.AmountTokens + } + return 0 +} + +func (x *CostTotal) GetAmountCredits() float64 { + if x != nil { + return x.AmountCredits + } + return 0 +} + +type TotalMetricsData struct { + state protoimpl.MessageState + sizeCache protoimpl.SizeCache + unknownFields protoimpl.UnknownFields + + InputTotal *CostTotal `protobuf:"bytes,1,opt,name=input_total,json=inputTotal,proto3" json:"input_total,omitempty"` + OutputTotal *CostTotal `protobuf:"bytes,2,opt,name=output_total,json=outputTotal,proto3" json:"output_total,omitempty"` +} + +func (x *TotalMetricsData) Reset() { + *x = TotalMetricsData{} + if protoimpl.UnsafeEnabled { + mi := &file_stability_api_platform_dashboard_v1_dashboard_proto_msgTypes[10] + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + ms.StoreMessageInfo(mi) + } +} + +func (x *TotalMetricsData) String() string { + return protoimpl.X.MessageStringOf(x) +} + +func (*TotalMetricsData) ProtoMessage() {} + +func (x *TotalMetricsData) ProtoReflect() protoreflect.Message { + mi := &file_stability_api_platform_dashboard_v1_dashboard_proto_msgTypes[10] + if protoimpl.UnsafeEnabled && x != nil { + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + if ms.LoadMessageInfo() == nil { + ms.StoreMessageInfo(mi) + } + return ms + } + return mi.MessageOf(x) +} + +// Deprecated: Use TotalMetricsData.ProtoReflect.Descriptor instead. +func (*TotalMetricsData) Descriptor() ([]byte, []int) { + return file_stability_api_platform_dashboard_v1_dashboard_proto_rawDescGZIP(), []int{10} +} + +func (x *TotalMetricsData) GetInputTotal() *CostTotal { + if x != nil { + return x.InputTotal + } + return nil +} + +func (x *TotalMetricsData) GetOutputTotal() *CostTotal { + if x != nil { + return x.OutputTotal + } + return nil +} + +type Metrics struct { + state protoimpl.MessageState + sizeCache protoimpl.SizeCache + unknownFields protoimpl.UnknownFields + + Metrics []*UsageMetric `protobuf:"bytes,1,rep,name=metrics,proto3" json:"metrics,omitempty"` + Total *TotalMetricsData `protobuf:"bytes,2,opt,name=total,proto3" json:"total,omitempty"` +} + +func (x *Metrics) Reset() { + *x = Metrics{} + if protoimpl.UnsafeEnabled { + mi := &file_stability_api_platform_dashboard_v1_dashboard_proto_msgTypes[11] + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + ms.StoreMessageInfo(mi) + } +} + +func (x *Metrics) String() string { + return protoimpl.X.MessageStringOf(x) +} + +func (*Metrics) ProtoMessage() {} + +func (x *Metrics) ProtoReflect() protoreflect.Message { + mi := &file_stability_api_platform_dashboard_v1_dashboard_proto_msgTypes[11] + if protoimpl.UnsafeEnabled && x != nil { + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + if ms.LoadMessageInfo() == nil { + ms.StoreMessageInfo(mi) + } + return ms + } + return mi.MessageOf(x) +} + +// Deprecated: Use Metrics.ProtoReflect.Descriptor instead. +func (*Metrics) Descriptor() ([]byte, []int) { + return file_stability_api_platform_dashboard_v1_dashboard_proto_rawDescGZIP(), []int{11} +} + +func (x *Metrics) GetMetrics() []*UsageMetric { + if x != nil { + return x.Metrics + } + return nil +} + +func (x *Metrics) GetTotal() *TotalMetricsData { + if x != nil { + return x.Total + } + return nil +} + +type EmptyRequest struct { + state protoimpl.MessageState + sizeCache protoimpl.SizeCache + unknownFields protoimpl.UnknownFields +} + +func (x *EmptyRequest) Reset() { + *x = EmptyRequest{} + if protoimpl.UnsafeEnabled { + mi := &file_stability_api_platform_dashboard_v1_dashboard_proto_msgTypes[12] + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + ms.StoreMessageInfo(mi) + } +} + +func (x *EmptyRequest) String() string { + return protoimpl.X.MessageStringOf(x) +} + +func (*EmptyRequest) ProtoMessage() {} + +func (x *EmptyRequest) ProtoReflect() protoreflect.Message { + mi := &file_stability_api_platform_dashboard_v1_dashboard_proto_msgTypes[12] + if protoimpl.UnsafeEnabled && x != nil { + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + if ms.LoadMessageInfo() == nil { + ms.StoreMessageInfo(mi) + } + return ms + } + return mi.MessageOf(x) +} + +// Deprecated: Use EmptyRequest.ProtoReflect.Descriptor instead. +func (*EmptyRequest) Descriptor() ([]byte, []int) { + return file_stability_api_platform_dashboard_v1_dashboard_proto_rawDescGZIP(), []int{12} +} + +type GetOrganizationRequest struct { + state protoimpl.MessageState + sizeCache protoimpl.SizeCache + unknownFields protoimpl.UnknownFields + + Id string `protobuf:"bytes,1,opt,name=id,proto3" json:"id,omitempty"` +} + +func (x *GetOrganizationRequest) Reset() { + *x = GetOrganizationRequest{} + if protoimpl.UnsafeEnabled { + mi := &file_stability_api_platform_dashboard_v1_dashboard_proto_msgTypes[13] + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + ms.StoreMessageInfo(mi) + } +} + +func (x *GetOrganizationRequest) String() string { + return protoimpl.X.MessageStringOf(x) +} + +func (*GetOrganizationRequest) ProtoMessage() {} + +func (x *GetOrganizationRequest) ProtoReflect() protoreflect.Message { + mi := &file_stability_api_platform_dashboard_v1_dashboard_proto_msgTypes[13] + if protoimpl.UnsafeEnabled && x != nil { + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + if ms.LoadMessageInfo() == nil { + ms.StoreMessageInfo(mi) + } + return ms + } + return mi.MessageOf(x) +} + +// Deprecated: Use GetOrganizationRequest.ProtoReflect.Descriptor instead. +func (*GetOrganizationRequest) Descriptor() ([]byte, []int) { + return file_stability_api_platform_dashboard_v1_dashboard_proto_rawDescGZIP(), []int{13} +} + +func (x *GetOrganizationRequest) GetId() string { + if x != nil { + return x.Id + } + return "" +} + +type GetMetricsRequest struct { + state protoimpl.MessageState + sizeCache protoimpl.SizeCache + unknownFields protoimpl.UnknownFields + + OrganizationId string `protobuf:"bytes,1,opt,name=organization_id,json=organizationId,proto3" json:"organization_id,omitempty"` + UserId *string `protobuf:"bytes,2,opt,name=user_id,json=userId,proto3,oneof" json:"user_id,omitempty"` + RangeFrom uint64 `protobuf:"varint,3,opt,name=range_from,json=rangeFrom,proto3" json:"range_from,omitempty"` + RangeTo uint64 `protobuf:"varint,4,opt,name=range_to,json=rangeTo,proto3" json:"range_to,omitempty"` + IncludePerRequestMetrics bool `protobuf:"varint,5,opt,name=include_per_request_metrics,json=includePerRequestMetrics,proto3" json:"include_per_request_metrics,omitempty"` +} + +func (x *GetMetricsRequest) Reset() { + *x = GetMetricsRequest{} + if protoimpl.UnsafeEnabled { + mi := &file_stability_api_platform_dashboard_v1_dashboard_proto_msgTypes[14] + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + ms.StoreMessageInfo(mi) + } +} + +func (x *GetMetricsRequest) String() string { + return protoimpl.X.MessageStringOf(x) +} + +func (*GetMetricsRequest) ProtoMessage() {} + +func (x *GetMetricsRequest) ProtoReflect() protoreflect.Message { + mi := &file_stability_api_platform_dashboard_v1_dashboard_proto_msgTypes[14] + if protoimpl.UnsafeEnabled && x != nil { + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + if ms.LoadMessageInfo() == nil { + ms.StoreMessageInfo(mi) + } + return ms + } + return mi.MessageOf(x) +} + +// Deprecated: Use GetMetricsRequest.ProtoReflect.Descriptor instead. +func (*GetMetricsRequest) Descriptor() ([]byte, []int) { + return file_stability_api_platform_dashboard_v1_dashboard_proto_rawDescGZIP(), []int{14} +} + +func (x *GetMetricsRequest) GetOrganizationId() string { + if x != nil { + return x.OrganizationId + } + return "" +} + +func (x *GetMetricsRequest) GetUserId() string { + if x != nil && x.UserId != nil { + return *x.UserId + } + return "" +} + +func (x *GetMetricsRequest) GetRangeFrom() uint64 { + if x != nil { + return x.RangeFrom + } + return 0 +} + +func (x *GetMetricsRequest) GetRangeTo() uint64 { + if x != nil { + return x.RangeTo + } + return 0 +} + +func (x *GetMetricsRequest) GetIncludePerRequestMetrics() bool { + if x != nil { + return x.IncludePerRequestMetrics + } + return false +} + +type APIKeyRequest struct { + state protoimpl.MessageState + sizeCache protoimpl.SizeCache + unknownFields protoimpl.UnknownFields + + IsSecret bool `protobuf:"varint,1,opt,name=is_secret,json=isSecret,proto3" json:"is_secret,omitempty"` +} + +func (x *APIKeyRequest) Reset() { + *x = APIKeyRequest{} + if protoimpl.UnsafeEnabled { + mi := &file_stability_api_platform_dashboard_v1_dashboard_proto_msgTypes[15] + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + ms.StoreMessageInfo(mi) + } +} + +func (x *APIKeyRequest) String() string { + return protoimpl.X.MessageStringOf(x) +} + +func (*APIKeyRequest) ProtoMessage() {} + +func (x *APIKeyRequest) ProtoReflect() protoreflect.Message { + mi := &file_stability_api_platform_dashboard_v1_dashboard_proto_msgTypes[15] + if protoimpl.UnsafeEnabled && x != nil { + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + if ms.LoadMessageInfo() == nil { + ms.StoreMessageInfo(mi) + } + return ms + } + return mi.MessageOf(x) +} + +// Deprecated: Use APIKeyRequest.ProtoReflect.Descriptor instead. +func (*APIKeyRequest) Descriptor() ([]byte, []int) { + return file_stability_api_platform_dashboard_v1_dashboard_proto_rawDescGZIP(), []int{15} +} + +func (x *APIKeyRequest) GetIsSecret() bool { + if x != nil { + return x.IsSecret + } + return false +} + +type APIKeyFindRequest struct { + state protoimpl.MessageState + sizeCache protoimpl.SizeCache + unknownFields protoimpl.UnknownFields + + Id string `protobuf:"bytes,1,opt,name=id,proto3" json:"id,omitempty"` +} + +func (x *APIKeyFindRequest) Reset() { + *x = APIKeyFindRequest{} + if protoimpl.UnsafeEnabled { + mi := &file_stability_api_platform_dashboard_v1_dashboard_proto_msgTypes[16] + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + ms.StoreMessageInfo(mi) + } +} + +func (x *APIKeyFindRequest) String() string { + return protoimpl.X.MessageStringOf(x) +} + +func (*APIKeyFindRequest) ProtoMessage() {} + +func (x *APIKeyFindRequest) ProtoReflect() protoreflect.Message { + mi := &file_stability_api_platform_dashboard_v1_dashboard_proto_msgTypes[16] + if protoimpl.UnsafeEnabled && x != nil { + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + if ms.LoadMessageInfo() == nil { + ms.StoreMessageInfo(mi) + } + return ms + } + return mi.MessageOf(x) +} + +// Deprecated: Use APIKeyFindRequest.ProtoReflect.Descriptor instead. +func (*APIKeyFindRequest) Descriptor() ([]byte, []int) { + return file_stability_api_platform_dashboard_v1_dashboard_proto_rawDescGZIP(), []int{16} +} + +func (x *APIKeyFindRequest) GetId() string { + if x != nil { + return x.Id + } + return "" +} + +type UpdateDefaultOrganizationRequest struct { + state protoimpl.MessageState + sizeCache protoimpl.SizeCache + unknownFields protoimpl.UnknownFields + + OrganizationId string `protobuf:"bytes,1,opt,name=organization_id,json=organizationId,proto3" json:"organization_id,omitempty"` +} + +func (x *UpdateDefaultOrganizationRequest) Reset() { + *x = UpdateDefaultOrganizationRequest{} + if protoimpl.UnsafeEnabled { + mi := &file_stability_api_platform_dashboard_v1_dashboard_proto_msgTypes[17] + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + ms.StoreMessageInfo(mi) + } +} + +func (x *UpdateDefaultOrganizationRequest) String() string { + return protoimpl.X.MessageStringOf(x) +} + +func (*UpdateDefaultOrganizationRequest) ProtoMessage() {} + +func (x *UpdateDefaultOrganizationRequest) ProtoReflect() protoreflect.Message { + mi := &file_stability_api_platform_dashboard_v1_dashboard_proto_msgTypes[17] + if protoimpl.UnsafeEnabled && x != nil { + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + if ms.LoadMessageInfo() == nil { + ms.StoreMessageInfo(mi) + } + return ms + } + return mi.MessageOf(x) +} + +// Deprecated: Use UpdateDefaultOrganizationRequest.ProtoReflect.Descriptor instead. +func (*UpdateDefaultOrganizationRequest) Descriptor() ([]byte, []int) { + return file_stability_api_platform_dashboard_v1_dashboard_proto_rawDescGZIP(), []int{17} +} + +func (x *UpdateDefaultOrganizationRequest) GetOrganizationId() string { + if x != nil { + return x.OrganizationId + } + return "" +} + +type ClientSettings struct { + state protoimpl.MessageState + sizeCache protoimpl.SizeCache + unknownFields protoimpl.UnknownFields + + Settings []byte `protobuf:"bytes,1,opt,name=settings,proto3" json:"settings,omitempty"` +} + +func (x *ClientSettings) Reset() { + *x = ClientSettings{} + if protoimpl.UnsafeEnabled { + mi := &file_stability_api_platform_dashboard_v1_dashboard_proto_msgTypes[18] + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + ms.StoreMessageInfo(mi) + } +} + +func (x *ClientSettings) String() string { + return protoimpl.X.MessageStringOf(x) +} + +func (*ClientSettings) ProtoMessage() {} + +func (x *ClientSettings) ProtoReflect() protoreflect.Message { + mi := &file_stability_api_platform_dashboard_v1_dashboard_proto_msgTypes[18] + if protoimpl.UnsafeEnabled && x != nil { + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + if ms.LoadMessageInfo() == nil { + ms.StoreMessageInfo(mi) + } + return ms + } + return mi.MessageOf(x) +} + +// Deprecated: Use ClientSettings.ProtoReflect.Descriptor instead. +func (*ClientSettings) Descriptor() ([]byte, []int) { + return file_stability_api_platform_dashboard_v1_dashboard_proto_rawDescGZIP(), []int{18} +} + +func (x *ClientSettings) GetSettings() []byte { + if x != nil { + return x.Settings + } + return nil +} + +type CreateAutoChargeIntentRequest struct { + state protoimpl.MessageState + sizeCache protoimpl.SizeCache + unknownFields protoimpl.UnknownFields + + OrganizationId string `protobuf:"bytes,1,opt,name=organization_id,json=organizationId,proto3" json:"organization_id,omitempty"` + MonthlyMaximum uint64 `protobuf:"varint,2,opt,name=monthly_maximum,json=monthlyMaximum,proto3" json:"monthly_maximum,omitempty"` + MinimumValue uint64 `protobuf:"varint,3,opt,name=minimum_value,json=minimumValue,proto3" json:"minimum_value,omitempty"` + AmountCredits uint64 `protobuf:"varint,4,opt,name=amount_credits,json=amountCredits,proto3" json:"amount_credits,omitempty"` +} + +func (x *CreateAutoChargeIntentRequest) Reset() { + *x = CreateAutoChargeIntentRequest{} + if protoimpl.UnsafeEnabled { + mi := &file_stability_api_platform_dashboard_v1_dashboard_proto_msgTypes[19] + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + ms.StoreMessageInfo(mi) + } +} + +func (x *CreateAutoChargeIntentRequest) String() string { + return protoimpl.X.MessageStringOf(x) +} + +func (*CreateAutoChargeIntentRequest) ProtoMessage() {} + +func (x *CreateAutoChargeIntentRequest) ProtoReflect() protoreflect.Message { + mi := &file_stability_api_platform_dashboard_v1_dashboard_proto_msgTypes[19] + if protoimpl.UnsafeEnabled && x != nil { + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + if ms.LoadMessageInfo() == nil { + ms.StoreMessageInfo(mi) + } + return ms + } + return mi.MessageOf(x) +} + +// Deprecated: Use CreateAutoChargeIntentRequest.ProtoReflect.Descriptor instead. +func (*CreateAutoChargeIntentRequest) Descriptor() ([]byte, []int) { + return file_stability_api_platform_dashboard_v1_dashboard_proto_rawDescGZIP(), []int{19} +} + +func (x *CreateAutoChargeIntentRequest) GetOrganizationId() string { + if x != nil { + return x.OrganizationId + } + return "" +} + +func (x *CreateAutoChargeIntentRequest) GetMonthlyMaximum() uint64 { + if x != nil { + return x.MonthlyMaximum + } + return 0 +} + +func (x *CreateAutoChargeIntentRequest) GetMinimumValue() uint64 { + if x != nil { + return x.MinimumValue + } + return 0 +} + +func (x *CreateAutoChargeIntentRequest) GetAmountCredits() uint64 { + if x != nil { + return x.AmountCredits + } + return 0 +} + +type CreateChargeRequest struct { + state protoimpl.MessageState + sizeCache protoimpl.SizeCache + unknownFields protoimpl.UnknownFields + + Amount uint64 `protobuf:"varint,1,opt,name=amount,proto3" json:"amount,omitempty"` + OrganizationId string `protobuf:"bytes,2,opt,name=organization_id,json=organizationId,proto3" json:"organization_id,omitempty"` +} + +func (x *CreateChargeRequest) Reset() { + *x = CreateChargeRequest{} + if protoimpl.UnsafeEnabled { + mi := &file_stability_api_platform_dashboard_v1_dashboard_proto_msgTypes[20] + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + ms.StoreMessageInfo(mi) + } +} + +func (x *CreateChargeRequest) String() string { + return protoimpl.X.MessageStringOf(x) +} + +func (*CreateChargeRequest) ProtoMessage() {} + +func (x *CreateChargeRequest) ProtoReflect() protoreflect.Message { + mi := &file_stability_api_platform_dashboard_v1_dashboard_proto_msgTypes[20] + if protoimpl.UnsafeEnabled && x != nil { + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + if ms.LoadMessageInfo() == nil { + ms.StoreMessageInfo(mi) + } + return ms + } + return mi.MessageOf(x) +} + +// Deprecated: Use CreateChargeRequest.ProtoReflect.Descriptor instead. +func (*CreateChargeRequest) Descriptor() ([]byte, []int) { + return file_stability_api_platform_dashboard_v1_dashboard_proto_rawDescGZIP(), []int{20} +} + +func (x *CreateChargeRequest) GetAmount() uint64 { + if x != nil { + return x.Amount + } + return 0 +} + +func (x *CreateChargeRequest) GetOrganizationId() string { + if x != nil { + return x.OrganizationId + } + return "" +} + +type GetChargesRequest struct { + state protoimpl.MessageState + sizeCache protoimpl.SizeCache + unknownFields protoimpl.UnknownFields + + OrganizationId string `protobuf:"bytes,1,opt,name=organization_id,json=organizationId,proto3" json:"organization_id,omitempty"` + RangeFrom uint64 `protobuf:"varint,2,opt,name=range_from,json=rangeFrom,proto3" json:"range_from,omitempty"` + RangeTo uint64 `protobuf:"varint,3,opt,name=range_to,json=rangeTo,proto3" json:"range_to,omitempty"` +} + +func (x *GetChargesRequest) Reset() { + *x = GetChargesRequest{} + if protoimpl.UnsafeEnabled { + mi := &file_stability_api_platform_dashboard_v1_dashboard_proto_msgTypes[21] + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + ms.StoreMessageInfo(mi) + } +} + +func (x *GetChargesRequest) String() string { + return protoimpl.X.MessageStringOf(x) +} + +func (*GetChargesRequest) ProtoMessage() {} + +func (x *GetChargesRequest) ProtoReflect() protoreflect.Message { + mi := &file_stability_api_platform_dashboard_v1_dashboard_proto_msgTypes[21] + if protoimpl.UnsafeEnabled && x != nil { + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + if ms.LoadMessageInfo() == nil { + ms.StoreMessageInfo(mi) + } + return ms + } + return mi.MessageOf(x) +} + +// Deprecated: Use GetChargesRequest.ProtoReflect.Descriptor instead. +func (*GetChargesRequest) Descriptor() ([]byte, []int) { + return file_stability_api_platform_dashboard_v1_dashboard_proto_rawDescGZIP(), []int{21} +} + +func (x *GetChargesRequest) GetOrganizationId() string { + if x != nil { + return x.OrganizationId + } + return "" +} + +func (x *GetChargesRequest) GetRangeFrom() uint64 { + if x != nil { + return x.RangeFrom + } + return 0 +} + +func (x *GetChargesRequest) GetRangeTo() uint64 { + if x != nil { + return x.RangeTo + } + return 0 +} + +type Charge struct { + state protoimpl.MessageState + sizeCache protoimpl.SizeCache + unknownFields protoimpl.UnknownFields + + Id string `protobuf:"bytes,1,opt,name=id,proto3" json:"id,omitempty"` + Paid bool `protobuf:"varint,2,opt,name=paid,proto3" json:"paid,omitempty"` + ReceiptLink string `protobuf:"bytes,3,opt,name=receipt_link,json=receiptLink,proto3" json:"receipt_link,omitempty"` + PaymentLink string `protobuf:"bytes,4,opt,name=payment_link,json=paymentLink,proto3" json:"payment_link,omitempty"` + CreatedAt uint64 `protobuf:"varint,5,opt,name=created_at,json=createdAt,proto3" json:"created_at,omitempty"` + AmountCredits uint64 `protobuf:"varint,6,opt,name=amount_credits,json=amountCredits,proto3" json:"amount_credits,omitempty"` +} + +func (x *Charge) Reset() { + *x = Charge{} + if protoimpl.UnsafeEnabled { + mi := &file_stability_api_platform_dashboard_v1_dashboard_proto_msgTypes[22] + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + ms.StoreMessageInfo(mi) + } +} + +func (x *Charge) String() string { + return protoimpl.X.MessageStringOf(x) +} + +func (*Charge) ProtoMessage() {} + +func (x *Charge) ProtoReflect() protoreflect.Message { + mi := &file_stability_api_platform_dashboard_v1_dashboard_proto_msgTypes[22] + if protoimpl.UnsafeEnabled && x != nil { + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + if ms.LoadMessageInfo() == nil { + ms.StoreMessageInfo(mi) + } + return ms + } + return mi.MessageOf(x) +} + +// Deprecated: Use Charge.ProtoReflect.Descriptor instead. +func (*Charge) Descriptor() ([]byte, []int) { + return file_stability_api_platform_dashboard_v1_dashboard_proto_rawDescGZIP(), []int{22} +} + +func (x *Charge) GetId() string { + if x != nil { + return x.Id + } + return "" +} + +func (x *Charge) GetPaid() bool { + if x != nil { + return x.Paid + } + return false +} + +func (x *Charge) GetReceiptLink() string { + if x != nil { + return x.ReceiptLink + } + return "" +} + +func (x *Charge) GetPaymentLink() string { + if x != nil { + return x.PaymentLink + } + return "" +} + +func (x *Charge) GetCreatedAt() uint64 { + if x != nil { + return x.CreatedAt + } + return 0 +} + +func (x *Charge) GetAmountCredits() uint64 { + if x != nil { + return x.AmountCredits + } + return 0 +} + +type Charges struct { + state protoimpl.MessageState + sizeCache protoimpl.SizeCache + unknownFields protoimpl.UnknownFields + + Charges []*Charge `protobuf:"bytes,1,rep,name=charges,proto3" json:"charges,omitempty"` +} + +func (x *Charges) Reset() { + *x = Charges{} + if protoimpl.UnsafeEnabled { + mi := &file_stability_api_platform_dashboard_v1_dashboard_proto_msgTypes[23] + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + ms.StoreMessageInfo(mi) + } +} + +func (x *Charges) String() string { + return protoimpl.X.MessageStringOf(x) +} + +func (*Charges) ProtoMessage() {} + +func (x *Charges) ProtoReflect() protoreflect.Message { + mi := &file_stability_api_platform_dashboard_v1_dashboard_proto_msgTypes[23] + if protoimpl.UnsafeEnabled && x != nil { + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + if ms.LoadMessageInfo() == nil { + ms.StoreMessageInfo(mi) + } + return ms + } + return mi.MessageOf(x) +} + +// Deprecated: Use Charges.ProtoReflect.Descriptor instead. +func (*Charges) Descriptor() ([]byte, []int) { + return file_stability_api_platform_dashboard_v1_dashboard_proto_rawDescGZIP(), []int{23} +} + +func (x *Charges) GetCharges() []*Charge { + if x != nil { + return x.Charges + } + return nil +} + +type GetAutoChargeRequest struct { + state protoimpl.MessageState + sizeCache protoimpl.SizeCache + unknownFields protoimpl.UnknownFields + + OrganizationId string `protobuf:"bytes,1,opt,name=organization_id,json=organizationId,proto3" json:"organization_id,omitempty"` +} + +func (x *GetAutoChargeRequest) Reset() { + *x = GetAutoChargeRequest{} + if protoimpl.UnsafeEnabled { + mi := &file_stability_api_platform_dashboard_v1_dashboard_proto_msgTypes[24] + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + ms.StoreMessageInfo(mi) + } +} + +func (x *GetAutoChargeRequest) String() string { + return protoimpl.X.MessageStringOf(x) +} + +func (*GetAutoChargeRequest) ProtoMessage() {} + +func (x *GetAutoChargeRequest) ProtoReflect() protoreflect.Message { + mi := &file_stability_api_platform_dashboard_v1_dashboard_proto_msgTypes[24] + if protoimpl.UnsafeEnabled && x != nil { + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + if ms.LoadMessageInfo() == nil { + ms.StoreMessageInfo(mi) + } + return ms + } + return mi.MessageOf(x) +} + +// Deprecated: Use GetAutoChargeRequest.ProtoReflect.Descriptor instead. +func (*GetAutoChargeRequest) Descriptor() ([]byte, []int) { + return file_stability_api_platform_dashboard_v1_dashboard_proto_rawDescGZIP(), []int{24} +} + +func (x *GetAutoChargeRequest) GetOrganizationId() string { + if x != nil { + return x.OrganizationId + } + return "" +} + +type AutoChargeIntent struct { + state protoimpl.MessageState + sizeCache protoimpl.SizeCache + unknownFields protoimpl.UnknownFields + + Id string `protobuf:"bytes,1,opt,name=id,proto3" json:"id,omitempty"` + PaymentLink string `protobuf:"bytes,2,opt,name=payment_link,json=paymentLink,proto3" json:"payment_link,omitempty"` + CreatedAt uint64 `protobuf:"varint,3,opt,name=created_at,json=createdAt,proto3" json:"created_at,omitempty"` + MonthlyMaximum uint64 `protobuf:"varint,4,opt,name=monthly_maximum,json=monthlyMaximum,proto3" json:"monthly_maximum,omitempty"` + MinimumValue uint64 `protobuf:"varint,5,opt,name=minimum_value,json=minimumValue,proto3" json:"minimum_value,omitempty"` + AmountCredits uint64 `protobuf:"varint,6,opt,name=amount_credits,json=amountCredits,proto3" json:"amount_credits,omitempty"` +} + +func (x *AutoChargeIntent) Reset() { + *x = AutoChargeIntent{} + if protoimpl.UnsafeEnabled { + mi := &file_stability_api_platform_dashboard_v1_dashboard_proto_msgTypes[25] + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + ms.StoreMessageInfo(mi) + } +} + +func (x *AutoChargeIntent) String() string { + return protoimpl.X.MessageStringOf(x) +} + +func (*AutoChargeIntent) ProtoMessage() {} + +func (x *AutoChargeIntent) ProtoReflect() protoreflect.Message { + mi := &file_stability_api_platform_dashboard_v1_dashboard_proto_msgTypes[25] + if protoimpl.UnsafeEnabled && x != nil { + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + if ms.LoadMessageInfo() == nil { + ms.StoreMessageInfo(mi) + } + return ms + } + return mi.MessageOf(x) +} + +// Deprecated: Use AutoChargeIntent.ProtoReflect.Descriptor instead. +func (*AutoChargeIntent) Descriptor() ([]byte, []int) { + return file_stability_api_platform_dashboard_v1_dashboard_proto_rawDescGZIP(), []int{25} +} + +func (x *AutoChargeIntent) GetId() string { + if x != nil { + return x.Id + } + return "" +} + +func (x *AutoChargeIntent) GetPaymentLink() string { + if x != nil { + return x.PaymentLink + } + return "" +} + +func (x *AutoChargeIntent) GetCreatedAt() uint64 { + if x != nil { + return x.CreatedAt + } + return 0 +} + +func (x *AutoChargeIntent) GetMonthlyMaximum() uint64 { + if x != nil { + return x.MonthlyMaximum + } + return 0 +} + +func (x *AutoChargeIntent) GetMinimumValue() uint64 { + if x != nil { + return x.MinimumValue + } + return 0 +} + +func (x *AutoChargeIntent) GetAmountCredits() uint64 { + if x != nil { + return x.AmountCredits + } + return 0 +} + +type UpdateUserInfoRequest struct { + state protoimpl.MessageState + sizeCache protoimpl.SizeCache + unknownFields protoimpl.UnknownFields + + Email *string `protobuf:"bytes,1,opt,name=email,proto3,oneof" json:"email,omitempty"` +} + +func (x *UpdateUserInfoRequest) Reset() { + *x = UpdateUserInfoRequest{} + if protoimpl.UnsafeEnabled { + mi := &file_stability_api_platform_dashboard_v1_dashboard_proto_msgTypes[26] + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + ms.StoreMessageInfo(mi) + } +} + +func (x *UpdateUserInfoRequest) String() string { + return protoimpl.X.MessageStringOf(x) +} + +func (*UpdateUserInfoRequest) ProtoMessage() {} + +func (x *UpdateUserInfoRequest) ProtoReflect() protoreflect.Message { + mi := &file_stability_api_platform_dashboard_v1_dashboard_proto_msgTypes[26] + if protoimpl.UnsafeEnabled && x != nil { + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + if ms.LoadMessageInfo() == nil { + ms.StoreMessageInfo(mi) + } + return ms + } + return mi.MessageOf(x) +} + +// Deprecated: Use UpdateUserInfoRequest.ProtoReflect.Descriptor instead. +func (*UpdateUserInfoRequest) Descriptor() ([]byte, []int) { + return file_stability_api_platform_dashboard_v1_dashboard_proto_rawDescGZIP(), []int{26} +} + +func (x *UpdateUserInfoRequest) GetEmail() string { + if x != nil && x.Email != nil { + return *x.Email + } + return "" +} + +type UserPasswordChangeTicket struct { + state protoimpl.MessageState + sizeCache protoimpl.SizeCache + unknownFields protoimpl.UnknownFields + + Ticket string `protobuf:"bytes,1,opt,name=ticket,proto3" json:"ticket,omitempty"` +} + +func (x *UserPasswordChangeTicket) Reset() { + *x = UserPasswordChangeTicket{} + if protoimpl.UnsafeEnabled { + mi := &file_stability_api_platform_dashboard_v1_dashboard_proto_msgTypes[27] + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + ms.StoreMessageInfo(mi) + } +} + +func (x *UserPasswordChangeTicket) String() string { + return protoimpl.X.MessageStringOf(x) +} + +func (*UserPasswordChangeTicket) ProtoMessage() {} + +func (x *UserPasswordChangeTicket) ProtoReflect() protoreflect.Message { + mi := &file_stability_api_platform_dashboard_v1_dashboard_proto_msgTypes[27] + if protoimpl.UnsafeEnabled && x != nil { + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + if ms.LoadMessageInfo() == nil { + ms.StoreMessageInfo(mi) + } + return ms + } + return mi.MessageOf(x) +} + +// Deprecated: Use UserPasswordChangeTicket.ProtoReflect.Descriptor instead. +func (*UserPasswordChangeTicket) Descriptor() ([]byte, []int) { + return file_stability_api_platform_dashboard_v1_dashboard_proto_rawDescGZIP(), []int{27} +} + +func (x *UserPasswordChangeTicket) GetTicket() string { + if x != nil { + return x.Ticket + } + return "" +} + +var File_stability_api_platform_dashboard_v1_dashboard_proto protoreflect.FileDescriptor + +var file_stability_api_platform_dashboard_v1_dashboard_proto_rawDesc = []byte{ + 0x0a, 0x33, 0x73, 0x74, 0x61, 0x62, 0x69, 0x6c, 0x69, 0x74, 0x79, 0x5f, 0x61, 0x70, 0x69, 0x2f, + 0x70, 0x6c, 0x61, 0x74, 0x66, 0x6f, 0x72, 0x6d, 0x2f, 0x64, 0x61, 0x73, 0x68, 0x62, 0x6f, 0x61, + 0x72, 0x64, 0x2f, 0x76, 0x31, 0x2f, 0x64, 0x61, 0x73, 0x68, 0x62, 0x6f, 0x61, 0x72, 0x64, 0x2e, + 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x12, 0x1c, 0x73, 0x74, 0x61, 0x62, 0x69, 0x6c, 0x69, 0x74, 0x79, + 0x61, 0x69, 0x2e, 0x61, 0x70, 0x69, 0x2e, 0x64, 0x61, 0x73, 0x68, 0x62, 0x6f, 0x61, 0x72, 0x64, + 0x2e, 0x76, 0x31, 0x22, 0x8d, 0x02, 0x0a, 0x12, 0x4f, 0x72, 0x67, 0x61, 0x6e, 0x69, 0x7a, 0x61, + 0x74, 0x69, 0x6f, 0x6e, 0x4d, 0x65, 0x6d, 0x62, 0x65, 0x72, 0x12, 0x4e, 0x0a, 0x0c, 0x6f, 0x72, + 0x67, 0x61, 0x6e, 0x69, 0x7a, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0b, + 0x32, 0x2a, 0x2e, 0x73, 0x74, 0x61, 0x62, 0x69, 0x6c, 0x69, 0x74, 0x79, 0x61, 0x69, 0x2e, 0x61, + 0x70, 0x69, 0x2e, 0x64, 0x61, 0x73, 0x68, 0x62, 0x6f, 0x61, 0x72, 0x64, 0x2e, 0x76, 0x31, 0x2e, + 0x4f, 0x72, 0x67, 0x61, 0x6e, 0x69, 0x7a, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x52, 0x0c, 0x6f, 0x72, + 0x67, 0x61, 0x6e, 0x69, 0x7a, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x12, 0x3b, 0x0a, 0x04, 0x75, 0x73, + 0x65, 0x72, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x22, 0x2e, 0x73, 0x74, 0x61, 0x62, 0x69, + 0x6c, 0x69, 0x74, 0x79, 0x61, 0x69, 0x2e, 0x61, 0x70, 0x69, 0x2e, 0x64, 0x61, 0x73, 0x68, 0x62, + 0x6f, 0x61, 0x72, 0x64, 0x2e, 0x76, 0x31, 0x2e, 0x55, 0x73, 0x65, 0x72, 0x48, 0x00, 0x52, 0x04, + 0x75, 0x73, 0x65, 0x72, 0x88, 0x01, 0x01, 0x12, 0x42, 0x0a, 0x04, 0x72, 0x6f, 0x6c, 0x65, 0x18, + 0x03, 0x20, 0x01, 0x28, 0x0e, 0x32, 0x2e, 0x2e, 0x73, 0x74, 0x61, 0x62, 0x69, 0x6c, 0x69, 0x74, + 0x79, 0x61, 0x69, 0x2e, 0x61, 0x70, 0x69, 0x2e, 0x64, 0x61, 0x73, 0x68, 0x62, 0x6f, 0x61, 0x72, + 0x64, 0x2e, 0x76, 0x31, 0x2e, 0x4f, 0x72, 0x67, 0x61, 0x6e, 0x69, 0x7a, 0x61, 0x74, 0x69, 0x6f, + 0x6e, 0x52, 0x6f, 0x6c, 0x65, 0x52, 0x04, 0x72, 0x6f, 0x6c, 0x65, 0x12, 0x1d, 0x0a, 0x0a, 0x69, + 0x73, 0x5f, 0x64, 0x65, 0x66, 0x61, 0x75, 0x6c, 0x74, 0x18, 0x04, 0x20, 0x01, 0x28, 0x08, 0x52, + 0x09, 0x69, 0x73, 0x44, 0x65, 0x66, 0x61, 0x75, 0x6c, 0x74, 0x42, 0x07, 0x0a, 0x05, 0x5f, 0x75, + 0x73, 0x65, 0x72, 0x22, 0x99, 0x01, 0x0a, 0x11, 0x4f, 0x72, 0x67, 0x61, 0x6e, 0x69, 0x7a, 0x61, + 0x74, 0x69, 0x6f, 0x6e, 0x47, 0x72, 0x61, 0x6e, 0x74, 0x12, 0x25, 0x0a, 0x0e, 0x61, 0x6d, 0x6f, + 0x75, 0x6e, 0x74, 0x5f, 0x67, 0x72, 0x61, 0x6e, 0x74, 0x65, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, + 0x01, 0x52, 0x0d, 0x61, 0x6d, 0x6f, 0x75, 0x6e, 0x74, 0x47, 0x72, 0x61, 0x6e, 0x74, 0x65, 0x64, + 0x12, 0x1f, 0x0a, 0x0b, 0x61, 0x6d, 0x6f, 0x75, 0x6e, 0x74, 0x5f, 0x75, 0x73, 0x65, 0x64, 0x18, + 0x02, 0x20, 0x01, 0x28, 0x01, 0x52, 0x0a, 0x61, 0x6d, 0x6f, 0x75, 0x6e, 0x74, 0x55, 0x73, 0x65, + 0x64, 0x12, 0x1d, 0x0a, 0x0a, 0x65, 0x78, 0x70, 0x69, 0x72, 0x65, 0x73, 0x5f, 0x61, 0x74, 0x18, + 0x03, 0x20, 0x01, 0x28, 0x04, 0x52, 0x09, 0x65, 0x78, 0x70, 0x69, 0x72, 0x65, 0x73, 0x41, 0x74, + 0x12, 0x1d, 0x0a, 0x0a, 0x67, 0x72, 0x61, 0x6e, 0x74, 0x65, 0x64, 0x5f, 0x61, 0x74, 0x18, 0x04, + 0x20, 0x01, 0x28, 0x04, 0x52, 0x09, 0x67, 0x72, 0x61, 0x6e, 0x74, 0x65, 0x64, 0x41, 0x74, 0x22, + 0x7c, 0x0a, 0x17, 0x4f, 0x72, 0x67, 0x61, 0x6e, 0x69, 0x7a, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x50, + 0x61, 0x79, 0x6d, 0x65, 0x6e, 0x74, 0x49, 0x6e, 0x66, 0x6f, 0x12, 0x18, 0x0a, 0x07, 0x62, 0x61, + 0x6c, 0x61, 0x6e, 0x63, 0x65, 0x18, 0x01, 0x20, 0x01, 0x28, 0x01, 0x52, 0x07, 0x62, 0x61, 0x6c, + 0x61, 0x6e, 0x63, 0x65, 0x12, 0x47, 0x0a, 0x06, 0x67, 0x72, 0x61, 0x6e, 0x74, 0x73, 0x18, 0x02, + 0x20, 0x03, 0x28, 0x0b, 0x32, 0x2f, 0x2e, 0x73, 0x74, 0x61, 0x62, 0x69, 0x6c, 0x69, 0x74, 0x79, + 0x61, 0x69, 0x2e, 0x61, 0x70, 0x69, 0x2e, 0x64, 0x61, 0x73, 0x68, 0x62, 0x6f, 0x61, 0x72, 0x64, + 0x2e, 0x76, 0x31, 0x2e, 0x4f, 0x72, 0x67, 0x61, 0x6e, 0x69, 0x7a, 0x61, 0x74, 0x69, 0x6f, 0x6e, + 0x47, 0x72, 0x61, 0x6e, 0x74, 0x52, 0x06, 0x67, 0x72, 0x61, 0x6e, 0x74, 0x73, 0x22, 0x61, 0x0a, + 0x16, 0x4f, 0x72, 0x67, 0x61, 0x6e, 0x69, 0x7a, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x41, 0x75, 0x74, + 0x6f, 0x43, 0x68, 0x61, 0x72, 0x67, 0x65, 0x12, 0x18, 0x0a, 0x07, 0x65, 0x6e, 0x61, 0x62, 0x6c, + 0x65, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x08, 0x52, 0x07, 0x65, 0x6e, 0x61, 0x62, 0x6c, 0x65, + 0x64, 0x12, 0x0e, 0x0a, 0x02, 0x69, 0x64, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x02, 0x69, + 0x64, 0x12, 0x1d, 0x0a, 0x0a, 0x63, 0x72, 0x65, 0x61, 0x74, 0x65, 0x64, 0x5f, 0x61, 0x74, 0x18, + 0x03, 0x20, 0x01, 0x28, 0x04, 0x52, 0x09, 0x63, 0x72, 0x65, 0x61, 0x74, 0x65, 0x64, 0x41, 0x74, + 0x22, 0xc6, 0x03, 0x0a, 0x0c, 0x4f, 0x72, 0x67, 0x61, 0x6e, 0x69, 0x7a, 0x61, 0x74, 0x69, 0x6f, + 0x6e, 0x12, 0x0e, 0x0a, 0x02, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x02, 0x69, + 0x64, 0x12, 0x12, 0x0a, 0x04, 0x6e, 0x61, 0x6d, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, + 0x04, 0x6e, 0x61, 0x6d, 0x65, 0x12, 0x20, 0x0a, 0x0b, 0x64, 0x65, 0x73, 0x63, 0x72, 0x69, 0x70, + 0x74, 0x69, 0x6f, 0x6e, 0x18, 0x03, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0b, 0x64, 0x65, 0x73, 0x63, + 0x72, 0x69, 0x70, 0x74, 0x69, 0x6f, 0x6e, 0x12, 0x4a, 0x0a, 0x07, 0x6d, 0x65, 0x6d, 0x62, 0x65, + 0x72, 0x73, 0x18, 0x04, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x30, 0x2e, 0x73, 0x74, 0x61, 0x62, 0x69, + 0x6c, 0x69, 0x74, 0x79, 0x61, 0x69, 0x2e, 0x61, 0x70, 0x69, 0x2e, 0x64, 0x61, 0x73, 0x68, 0x62, + 0x6f, 0x61, 0x72, 0x64, 0x2e, 0x76, 0x31, 0x2e, 0x4f, 0x72, 0x67, 0x61, 0x6e, 0x69, 0x7a, 0x61, + 0x74, 0x69, 0x6f, 0x6e, 0x4d, 0x65, 0x6d, 0x62, 0x65, 0x72, 0x52, 0x07, 0x6d, 0x65, 0x6d, 0x62, + 0x65, 0x72, 0x73, 0x12, 0x5d, 0x0a, 0x0c, 0x70, 0x61, 0x79, 0x6d, 0x65, 0x6e, 0x74, 0x5f, 0x69, + 0x6e, 0x66, 0x6f, 0x18, 0x05, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x35, 0x2e, 0x73, 0x74, 0x61, 0x62, + 0x69, 0x6c, 0x69, 0x74, 0x79, 0x61, 0x69, 0x2e, 0x61, 0x70, 0x69, 0x2e, 0x64, 0x61, 0x73, 0x68, + 0x62, 0x6f, 0x61, 0x72, 0x64, 0x2e, 0x76, 0x31, 0x2e, 0x4f, 0x72, 0x67, 0x61, 0x6e, 0x69, 0x7a, + 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x50, 0x61, 0x79, 0x6d, 0x65, 0x6e, 0x74, 0x49, 0x6e, 0x66, 0x6f, + 0x48, 0x00, 0x52, 0x0b, 0x70, 0x61, 0x79, 0x6d, 0x65, 0x6e, 0x74, 0x49, 0x6e, 0x66, 0x6f, 0x88, + 0x01, 0x01, 0x12, 0x31, 0x0a, 0x12, 0x73, 0x74, 0x72, 0x69, 0x70, 0x65, 0x5f, 0x63, 0x75, 0x73, + 0x74, 0x6f, 0x6d, 0x65, 0x72, 0x5f, 0x69, 0x64, 0x18, 0x06, 0x20, 0x01, 0x28, 0x09, 0x48, 0x01, + 0x52, 0x10, 0x73, 0x74, 0x72, 0x69, 0x70, 0x65, 0x43, 0x75, 0x73, 0x74, 0x6f, 0x6d, 0x65, 0x72, + 0x49, 0x64, 0x88, 0x01, 0x01, 0x12, 0x5a, 0x0a, 0x0b, 0x61, 0x75, 0x74, 0x6f, 0x5f, 0x63, 0x68, + 0x61, 0x72, 0x67, 0x65, 0x18, 0x07, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x34, 0x2e, 0x73, 0x74, 0x61, + 0x62, 0x69, 0x6c, 0x69, 0x74, 0x79, 0x61, 0x69, 0x2e, 0x61, 0x70, 0x69, 0x2e, 0x64, 0x61, 0x73, + 0x68, 0x62, 0x6f, 0x61, 0x72, 0x64, 0x2e, 0x76, 0x31, 0x2e, 0x4f, 0x72, 0x67, 0x61, 0x6e, 0x69, + 0x7a, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x41, 0x75, 0x74, 0x6f, 0x43, 0x68, 0x61, 0x72, 0x67, 0x65, + 0x48, 0x02, 0x52, 0x0a, 0x61, 0x75, 0x74, 0x6f, 0x43, 0x68, 0x61, 0x72, 0x67, 0x65, 0x88, 0x01, + 0x01, 0x42, 0x0f, 0x0a, 0x0d, 0x5f, 0x70, 0x61, 0x79, 0x6d, 0x65, 0x6e, 0x74, 0x5f, 0x69, 0x6e, + 0x66, 0x6f, 0x42, 0x15, 0x0a, 0x13, 0x5f, 0x73, 0x74, 0x72, 0x69, 0x70, 0x65, 0x5f, 0x63, 0x75, + 0x73, 0x74, 0x6f, 0x6d, 0x65, 0x72, 0x5f, 0x69, 0x64, 0x42, 0x0e, 0x0a, 0x0c, 0x5f, 0x61, 0x75, + 0x74, 0x6f, 0x5f, 0x63, 0x68, 0x61, 0x72, 0x67, 0x65, 0x22, 0x56, 0x0a, 0x06, 0x41, 0x50, 0x49, + 0x4b, 0x65, 0x79, 0x12, 0x10, 0x0a, 0x03, 0x6b, 0x65, 0x79, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, + 0x52, 0x03, 0x6b, 0x65, 0x79, 0x12, 0x1b, 0x0a, 0x09, 0x69, 0x73, 0x5f, 0x73, 0x65, 0x63, 0x72, + 0x65, 0x74, 0x18, 0x02, 0x20, 0x01, 0x28, 0x08, 0x52, 0x08, 0x69, 0x73, 0x53, 0x65, 0x63, 0x72, + 0x65, 0x74, 0x12, 0x1d, 0x0a, 0x0a, 0x63, 0x72, 0x65, 0x61, 0x74, 0x65, 0x64, 0x5f, 0x61, 0x74, + 0x18, 0x03, 0x20, 0x01, 0x28, 0x04, 0x52, 0x09, 0x63, 0x72, 0x65, 0x61, 0x74, 0x65, 0x64, 0x41, + 0x74, 0x22, 0xf6, 0x02, 0x0a, 0x04, 0x55, 0x73, 0x65, 0x72, 0x12, 0x0e, 0x0a, 0x02, 0x69, 0x64, + 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x02, 0x69, 0x64, 0x12, 0x1c, 0x0a, 0x07, 0x61, 0x75, + 0x74, 0x68, 0x5f, 0x69, 0x64, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x48, 0x00, 0x52, 0x06, 0x61, + 0x75, 0x74, 0x68, 0x49, 0x64, 0x88, 0x01, 0x01, 0x12, 0x27, 0x0a, 0x0f, 0x70, 0x72, 0x6f, 0x66, + 0x69, 0x6c, 0x65, 0x5f, 0x70, 0x69, 0x63, 0x74, 0x75, 0x72, 0x65, 0x18, 0x03, 0x20, 0x01, 0x28, + 0x09, 0x52, 0x0e, 0x70, 0x72, 0x6f, 0x66, 0x69, 0x6c, 0x65, 0x50, 0x69, 0x63, 0x74, 0x75, 0x72, + 0x65, 0x12, 0x14, 0x0a, 0x05, 0x65, 0x6d, 0x61, 0x69, 0x6c, 0x18, 0x04, 0x20, 0x01, 0x28, 0x09, + 0x52, 0x05, 0x65, 0x6d, 0x61, 0x69, 0x6c, 0x12, 0x56, 0x0a, 0x0d, 0x6f, 0x72, 0x67, 0x61, 0x6e, + 0x69, 0x7a, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x18, 0x05, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x30, + 0x2e, 0x73, 0x74, 0x61, 0x62, 0x69, 0x6c, 0x69, 0x74, 0x79, 0x61, 0x69, 0x2e, 0x61, 0x70, 0x69, + 0x2e, 0x64, 0x61, 0x73, 0x68, 0x62, 0x6f, 0x61, 0x72, 0x64, 0x2e, 0x76, 0x31, 0x2e, 0x4f, 0x72, + 0x67, 0x61, 0x6e, 0x69, 0x7a, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x4d, 0x65, 0x6d, 0x62, 0x65, 0x72, + 0x52, 0x0d, 0x6f, 0x72, 0x67, 0x61, 0x6e, 0x69, 0x7a, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x12, + 0x3f, 0x0a, 0x08, 0x61, 0x70, 0x69, 0x5f, 0x6b, 0x65, 0x79, 0x73, 0x18, 0x07, 0x20, 0x03, 0x28, + 0x0b, 0x32, 0x24, 0x2e, 0x73, 0x74, 0x61, 0x62, 0x69, 0x6c, 0x69, 0x74, 0x79, 0x61, 0x69, 0x2e, + 0x61, 0x70, 0x69, 0x2e, 0x64, 0x61, 0x73, 0x68, 0x62, 0x6f, 0x61, 0x72, 0x64, 0x2e, 0x76, 0x31, + 0x2e, 0x41, 0x50, 0x49, 0x4b, 0x65, 0x79, 0x52, 0x07, 0x61, 0x70, 0x69, 0x4b, 0x65, 0x79, 0x73, + 0x12, 0x1d, 0x0a, 0x0a, 0x63, 0x72, 0x65, 0x61, 0x74, 0x65, 0x64, 0x5f, 0x61, 0x74, 0x18, 0x08, + 0x20, 0x01, 0x28, 0x04, 0x52, 0x09, 0x63, 0x72, 0x65, 0x61, 0x74, 0x65, 0x64, 0x41, 0x74, 0x12, + 0x2a, 0x0a, 0x0e, 0x65, 0x6d, 0x61, 0x69, 0x6c, 0x5f, 0x76, 0x65, 0x72, 0x69, 0x66, 0x69, 0x65, + 0x64, 0x18, 0x09, 0x20, 0x01, 0x28, 0x08, 0x48, 0x01, 0x52, 0x0d, 0x65, 0x6d, 0x61, 0x69, 0x6c, + 0x56, 0x65, 0x72, 0x69, 0x66, 0x69, 0x65, 0x64, 0x88, 0x01, 0x01, 0x42, 0x0a, 0x0a, 0x08, 0x5f, + 0x61, 0x75, 0x74, 0x68, 0x5f, 0x69, 0x64, 0x42, 0x11, 0x0a, 0x0f, 0x5f, 0x65, 0x6d, 0x61, 0x69, + 0x6c, 0x5f, 0x76, 0x65, 0x72, 0x69, 0x66, 0x69, 0x65, 0x64, 0x22, 0x56, 0x0a, 0x08, 0x43, 0x6f, + 0x73, 0x74, 0x44, 0x61, 0x74, 0x61, 0x12, 0x23, 0x0a, 0x0d, 0x61, 0x6d, 0x6f, 0x75, 0x6e, 0x74, + 0x5f, 0x74, 0x6f, 0x6b, 0x65, 0x6e, 0x73, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x0c, 0x61, + 0x6d, 0x6f, 0x75, 0x6e, 0x74, 0x54, 0x6f, 0x6b, 0x65, 0x6e, 0x73, 0x12, 0x25, 0x0a, 0x0e, 0x61, + 0x6d, 0x6f, 0x75, 0x6e, 0x74, 0x5f, 0x63, 0x72, 0x65, 0x64, 0x69, 0x74, 0x73, 0x18, 0x02, 0x20, + 0x01, 0x28, 0x01, 0x52, 0x0d, 0x61, 0x6d, 0x6f, 0x75, 0x6e, 0x74, 0x43, 0x72, 0x65, 0x64, 0x69, + 0x74, 0x73, 0x22, 0xaa, 0x02, 0x0a, 0x0b, 0x55, 0x73, 0x61, 0x67, 0x65, 0x4d, 0x65, 0x74, 0x72, + 0x69, 0x63, 0x12, 0x1c, 0x0a, 0x09, 0x6f, 0x70, 0x65, 0x72, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x18, + 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x09, 0x6f, 0x70, 0x65, 0x72, 0x61, 0x74, 0x69, 0x6f, 0x6e, + 0x12, 0x16, 0x0a, 0x06, 0x65, 0x6e, 0x67, 0x69, 0x6e, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, + 0x52, 0x06, 0x65, 0x6e, 0x67, 0x69, 0x6e, 0x65, 0x12, 0x45, 0x0a, 0x0a, 0x69, 0x6e, 0x70, 0x75, + 0x74, 0x5f, 0x63, 0x6f, 0x73, 0x74, 0x18, 0x03, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x26, 0x2e, 0x73, + 0x74, 0x61, 0x62, 0x69, 0x6c, 0x69, 0x74, 0x79, 0x61, 0x69, 0x2e, 0x61, 0x70, 0x69, 0x2e, 0x64, + 0x61, 0x73, 0x68, 0x62, 0x6f, 0x61, 0x72, 0x64, 0x2e, 0x76, 0x31, 0x2e, 0x43, 0x6f, 0x73, 0x74, + 0x44, 0x61, 0x74, 0x61, 0x52, 0x09, 0x69, 0x6e, 0x70, 0x75, 0x74, 0x43, 0x6f, 0x73, 0x74, 0x12, + 0x47, 0x0a, 0x0b, 0x6f, 0x75, 0x74, 0x70, 0x75, 0x74, 0x5f, 0x63, 0x6f, 0x73, 0x74, 0x18, 0x04, + 0x20, 0x01, 0x28, 0x0b, 0x32, 0x26, 0x2e, 0x73, 0x74, 0x61, 0x62, 0x69, 0x6c, 0x69, 0x74, 0x79, + 0x61, 0x69, 0x2e, 0x61, 0x70, 0x69, 0x2e, 0x64, 0x61, 0x73, 0x68, 0x62, 0x6f, 0x61, 0x72, 0x64, + 0x2e, 0x76, 0x31, 0x2e, 0x43, 0x6f, 0x73, 0x74, 0x44, 0x61, 0x74, 0x61, 0x52, 0x0a, 0x6f, 0x75, + 0x74, 0x70, 0x75, 0x74, 0x43, 0x6f, 0x73, 0x74, 0x12, 0x17, 0x0a, 0x04, 0x75, 0x73, 0x65, 0x72, + 0x18, 0x05, 0x20, 0x01, 0x28, 0x09, 0x48, 0x00, 0x52, 0x04, 0x75, 0x73, 0x65, 0x72, 0x88, 0x01, + 0x01, 0x12, 0x33, 0x0a, 0x15, 0x61, 0x67, 0x67, 0x72, 0x65, 0x67, 0x61, 0x74, 0x69, 0x6f, 0x6e, + 0x5f, 0x74, 0x69, 0x6d, 0x65, 0x73, 0x74, 0x61, 0x6d, 0x70, 0x18, 0x06, 0x20, 0x01, 0x28, 0x04, + 0x52, 0x14, 0x61, 0x67, 0x67, 0x72, 0x65, 0x67, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x54, 0x69, 0x6d, + 0x65, 0x73, 0x74, 0x61, 0x6d, 0x70, 0x42, 0x07, 0x0a, 0x05, 0x5f, 0x75, 0x73, 0x65, 0x72, 0x22, + 0x57, 0x0a, 0x09, 0x43, 0x6f, 0x73, 0x74, 0x54, 0x6f, 0x74, 0x61, 0x6c, 0x12, 0x23, 0x0a, 0x0d, + 0x61, 0x6d, 0x6f, 0x75, 0x6e, 0x74, 0x5f, 0x74, 0x6f, 0x6b, 0x65, 0x6e, 0x73, 0x18, 0x01, 0x20, + 0x01, 0x28, 0x0d, 0x52, 0x0c, 0x61, 0x6d, 0x6f, 0x75, 0x6e, 0x74, 0x54, 0x6f, 0x6b, 0x65, 0x6e, + 0x73, 0x12, 0x25, 0x0a, 0x0e, 0x61, 0x6d, 0x6f, 0x75, 0x6e, 0x74, 0x5f, 0x63, 0x72, 0x65, 0x64, + 0x69, 0x74, 0x73, 0x18, 0x02, 0x20, 0x01, 0x28, 0x01, 0x52, 0x0d, 0x61, 0x6d, 0x6f, 0x75, 0x6e, + 0x74, 0x43, 0x72, 0x65, 0x64, 0x69, 0x74, 0x73, 0x22, 0xa8, 0x01, 0x0a, 0x10, 0x54, 0x6f, 0x74, + 0x61, 0x6c, 0x4d, 0x65, 0x74, 0x72, 0x69, 0x63, 0x73, 0x44, 0x61, 0x74, 0x61, 0x12, 0x48, 0x0a, + 0x0b, 0x69, 0x6e, 0x70, 0x75, 0x74, 0x5f, 0x74, 0x6f, 0x74, 0x61, 0x6c, 0x18, 0x01, 0x20, 0x01, + 0x28, 0x0b, 0x32, 0x27, 0x2e, 0x73, 0x74, 0x61, 0x62, 0x69, 0x6c, 0x69, 0x74, 0x79, 0x61, 0x69, + 0x2e, 0x61, 0x70, 0x69, 0x2e, 0x64, 0x61, 0x73, 0x68, 0x62, 0x6f, 0x61, 0x72, 0x64, 0x2e, 0x76, + 0x31, 0x2e, 0x43, 0x6f, 0x73, 0x74, 0x54, 0x6f, 0x74, 0x61, 0x6c, 0x52, 0x0a, 0x69, 0x6e, 0x70, + 0x75, 0x74, 0x54, 0x6f, 0x74, 0x61, 0x6c, 0x12, 0x4a, 0x0a, 0x0c, 0x6f, 0x75, 0x74, 0x70, 0x75, + 0x74, 0x5f, 0x74, 0x6f, 0x74, 0x61, 0x6c, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x27, 0x2e, + 0x73, 0x74, 0x61, 0x62, 0x69, 0x6c, 0x69, 0x74, 0x79, 0x61, 0x69, 0x2e, 0x61, 0x70, 0x69, 0x2e, + 0x64, 0x61, 0x73, 0x68, 0x62, 0x6f, 0x61, 0x72, 0x64, 0x2e, 0x76, 0x31, 0x2e, 0x43, 0x6f, 0x73, + 0x74, 0x54, 0x6f, 0x74, 0x61, 0x6c, 0x52, 0x0b, 0x6f, 0x75, 0x74, 0x70, 0x75, 0x74, 0x54, 0x6f, + 0x74, 0x61, 0x6c, 0x22, 0x94, 0x01, 0x0a, 0x07, 0x4d, 0x65, 0x74, 0x72, 0x69, 0x63, 0x73, 0x12, + 0x43, 0x0a, 0x07, 0x6d, 0x65, 0x74, 0x72, 0x69, 0x63, 0x73, 0x18, 0x01, 0x20, 0x03, 0x28, 0x0b, + 0x32, 0x29, 0x2e, 0x73, 0x74, 0x61, 0x62, 0x69, 0x6c, 0x69, 0x74, 0x79, 0x61, 0x69, 0x2e, 0x61, + 0x70, 0x69, 0x2e, 0x64, 0x61, 0x73, 0x68, 0x62, 0x6f, 0x61, 0x72, 0x64, 0x2e, 0x76, 0x31, 0x2e, + 0x55, 0x73, 0x61, 0x67, 0x65, 0x4d, 0x65, 0x74, 0x72, 0x69, 0x63, 0x52, 0x07, 0x6d, 0x65, 0x74, + 0x72, 0x69, 0x63, 0x73, 0x12, 0x44, 0x0a, 0x05, 0x74, 0x6f, 0x74, 0x61, 0x6c, 0x18, 0x02, 0x20, + 0x01, 0x28, 0x0b, 0x32, 0x2e, 0x2e, 0x73, 0x74, 0x61, 0x62, 0x69, 0x6c, 0x69, 0x74, 0x79, 0x61, + 0x69, 0x2e, 0x61, 0x70, 0x69, 0x2e, 0x64, 0x61, 0x73, 0x68, 0x62, 0x6f, 0x61, 0x72, 0x64, 0x2e, + 0x76, 0x31, 0x2e, 0x54, 0x6f, 0x74, 0x61, 0x6c, 0x4d, 0x65, 0x74, 0x72, 0x69, 0x63, 0x73, 0x44, + 0x61, 0x74, 0x61, 0x52, 0x05, 0x74, 0x6f, 0x74, 0x61, 0x6c, 0x22, 0x0e, 0x0a, 0x0c, 0x45, 0x6d, + 0x70, 0x74, 0x79, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x22, 0x28, 0x0a, 0x16, 0x47, 0x65, + 0x74, 0x4f, 0x72, 0x67, 0x61, 0x6e, 0x69, 0x7a, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x52, 0x65, 0x71, + 0x75, 0x65, 0x73, 0x74, 0x12, 0x0e, 0x0a, 0x02, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, + 0x52, 0x02, 0x69, 0x64, 0x22, 0xdf, 0x01, 0x0a, 0x11, 0x47, 0x65, 0x74, 0x4d, 0x65, 0x74, 0x72, + 0x69, 0x63, 0x73, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, 0x27, 0x0a, 0x0f, 0x6f, 0x72, + 0x67, 0x61, 0x6e, 0x69, 0x7a, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x5f, 0x69, 0x64, 0x18, 0x01, 0x20, + 0x01, 0x28, 0x09, 0x52, 0x0e, 0x6f, 0x72, 0x67, 0x61, 0x6e, 0x69, 0x7a, 0x61, 0x74, 0x69, 0x6f, + 0x6e, 0x49, 0x64, 0x12, 0x1c, 0x0a, 0x07, 0x75, 0x73, 0x65, 0x72, 0x5f, 0x69, 0x64, 0x18, 0x02, + 0x20, 0x01, 0x28, 0x09, 0x48, 0x00, 0x52, 0x06, 0x75, 0x73, 0x65, 0x72, 0x49, 0x64, 0x88, 0x01, + 0x01, 0x12, 0x1d, 0x0a, 0x0a, 0x72, 0x61, 0x6e, 0x67, 0x65, 0x5f, 0x66, 0x72, 0x6f, 0x6d, 0x18, + 0x03, 0x20, 0x01, 0x28, 0x04, 0x52, 0x09, 0x72, 0x61, 0x6e, 0x67, 0x65, 0x46, 0x72, 0x6f, 0x6d, + 0x12, 0x19, 0x0a, 0x08, 0x72, 0x61, 0x6e, 0x67, 0x65, 0x5f, 0x74, 0x6f, 0x18, 0x04, 0x20, 0x01, + 0x28, 0x04, 0x52, 0x07, 0x72, 0x61, 0x6e, 0x67, 0x65, 0x54, 0x6f, 0x12, 0x3d, 0x0a, 0x1b, 0x69, + 0x6e, 0x63, 0x6c, 0x75, 0x64, 0x65, 0x5f, 0x70, 0x65, 0x72, 0x5f, 0x72, 0x65, 0x71, 0x75, 0x65, + 0x73, 0x74, 0x5f, 0x6d, 0x65, 0x74, 0x72, 0x69, 0x63, 0x73, 0x18, 0x05, 0x20, 0x01, 0x28, 0x08, + 0x52, 0x18, 0x69, 0x6e, 0x63, 0x6c, 0x75, 0x64, 0x65, 0x50, 0x65, 0x72, 0x52, 0x65, 0x71, 0x75, + 0x65, 0x73, 0x74, 0x4d, 0x65, 0x74, 0x72, 0x69, 0x63, 0x73, 0x42, 0x0a, 0x0a, 0x08, 0x5f, 0x75, + 0x73, 0x65, 0x72, 0x5f, 0x69, 0x64, 0x22, 0x2c, 0x0a, 0x0d, 0x41, 0x50, 0x49, 0x4b, 0x65, 0x79, + 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, 0x1b, 0x0a, 0x09, 0x69, 0x73, 0x5f, 0x73, 0x65, + 0x63, 0x72, 0x65, 0x74, 0x18, 0x01, 0x20, 0x01, 0x28, 0x08, 0x52, 0x08, 0x69, 0x73, 0x53, 0x65, + 0x63, 0x72, 0x65, 0x74, 0x22, 0x23, 0x0a, 0x11, 0x41, 0x50, 0x49, 0x4b, 0x65, 0x79, 0x46, 0x69, + 0x6e, 0x64, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, 0x0e, 0x0a, 0x02, 0x69, 0x64, 0x18, + 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x02, 0x69, 0x64, 0x22, 0x4b, 0x0a, 0x20, 0x55, 0x70, 0x64, + 0x61, 0x74, 0x65, 0x44, 0x65, 0x66, 0x61, 0x75, 0x6c, 0x74, 0x4f, 0x72, 0x67, 0x61, 0x6e, 0x69, + 0x7a, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, 0x27, 0x0a, + 0x0f, 0x6f, 0x72, 0x67, 0x61, 0x6e, 0x69, 0x7a, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x5f, 0x69, 0x64, + 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0e, 0x6f, 0x72, 0x67, 0x61, 0x6e, 0x69, 0x7a, 0x61, + 0x74, 0x69, 0x6f, 0x6e, 0x49, 0x64, 0x22, 0x2c, 0x0a, 0x0e, 0x43, 0x6c, 0x69, 0x65, 0x6e, 0x74, + 0x53, 0x65, 0x74, 0x74, 0x69, 0x6e, 0x67, 0x73, 0x12, 0x1a, 0x0a, 0x08, 0x73, 0x65, 0x74, 0x74, + 0x69, 0x6e, 0x67, 0x73, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0c, 0x52, 0x08, 0x73, 0x65, 0x74, 0x74, + 0x69, 0x6e, 0x67, 0x73, 0x22, 0xbd, 0x01, 0x0a, 0x1d, 0x43, 0x72, 0x65, 0x61, 0x74, 0x65, 0x41, + 0x75, 0x74, 0x6f, 0x43, 0x68, 0x61, 0x72, 0x67, 0x65, 0x49, 0x6e, 0x74, 0x65, 0x6e, 0x74, 0x52, + 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, 0x27, 0x0a, 0x0f, 0x6f, 0x72, 0x67, 0x61, 0x6e, 0x69, + 0x7a, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x5f, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, + 0x0e, 0x6f, 0x72, 0x67, 0x61, 0x6e, 0x69, 0x7a, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x49, 0x64, 0x12, + 0x27, 0x0a, 0x0f, 0x6d, 0x6f, 0x6e, 0x74, 0x68, 0x6c, 0x79, 0x5f, 0x6d, 0x61, 0x78, 0x69, 0x6d, + 0x75, 0x6d, 0x18, 0x02, 0x20, 0x01, 0x28, 0x04, 0x52, 0x0e, 0x6d, 0x6f, 0x6e, 0x74, 0x68, 0x6c, + 0x79, 0x4d, 0x61, 0x78, 0x69, 0x6d, 0x75, 0x6d, 0x12, 0x23, 0x0a, 0x0d, 0x6d, 0x69, 0x6e, 0x69, + 0x6d, 0x75, 0x6d, 0x5f, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x18, 0x03, 0x20, 0x01, 0x28, 0x04, 0x52, + 0x0c, 0x6d, 0x69, 0x6e, 0x69, 0x6d, 0x75, 0x6d, 0x56, 0x61, 0x6c, 0x75, 0x65, 0x12, 0x25, 0x0a, + 0x0e, 0x61, 0x6d, 0x6f, 0x75, 0x6e, 0x74, 0x5f, 0x63, 0x72, 0x65, 0x64, 0x69, 0x74, 0x73, 0x18, + 0x04, 0x20, 0x01, 0x28, 0x04, 0x52, 0x0d, 0x61, 0x6d, 0x6f, 0x75, 0x6e, 0x74, 0x43, 0x72, 0x65, + 0x64, 0x69, 0x74, 0x73, 0x22, 0x56, 0x0a, 0x13, 0x43, 0x72, 0x65, 0x61, 0x74, 0x65, 0x43, 0x68, + 0x61, 0x72, 0x67, 0x65, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, 0x16, 0x0a, 0x06, 0x61, + 0x6d, 0x6f, 0x75, 0x6e, 0x74, 0x18, 0x01, 0x20, 0x01, 0x28, 0x04, 0x52, 0x06, 0x61, 0x6d, 0x6f, + 0x75, 0x6e, 0x74, 0x12, 0x27, 0x0a, 0x0f, 0x6f, 0x72, 0x67, 0x61, 0x6e, 0x69, 0x7a, 0x61, 0x74, + 0x69, 0x6f, 0x6e, 0x5f, 0x69, 0x64, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0e, 0x6f, 0x72, + 0x67, 0x61, 0x6e, 0x69, 0x7a, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x49, 0x64, 0x22, 0x76, 0x0a, 0x11, + 0x47, 0x65, 0x74, 0x43, 0x68, 0x61, 0x72, 0x67, 0x65, 0x73, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, + 0x74, 0x12, 0x27, 0x0a, 0x0f, 0x6f, 0x72, 0x67, 0x61, 0x6e, 0x69, 0x7a, 0x61, 0x74, 0x69, 0x6f, + 0x6e, 0x5f, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0e, 0x6f, 0x72, 0x67, 0x61, + 0x6e, 0x69, 0x7a, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x49, 0x64, 0x12, 0x1d, 0x0a, 0x0a, 0x72, 0x61, + 0x6e, 0x67, 0x65, 0x5f, 0x66, 0x72, 0x6f, 0x6d, 0x18, 0x02, 0x20, 0x01, 0x28, 0x04, 0x52, 0x09, + 0x72, 0x61, 0x6e, 0x67, 0x65, 0x46, 0x72, 0x6f, 0x6d, 0x12, 0x19, 0x0a, 0x08, 0x72, 0x61, 0x6e, + 0x67, 0x65, 0x5f, 0x74, 0x6f, 0x18, 0x03, 0x20, 0x01, 0x28, 0x04, 0x52, 0x07, 0x72, 0x61, 0x6e, + 0x67, 0x65, 0x54, 0x6f, 0x22, 0xb8, 0x01, 0x0a, 0x06, 0x43, 0x68, 0x61, 0x72, 0x67, 0x65, 0x12, + 0x0e, 0x0a, 0x02, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x02, 0x69, 0x64, 0x12, + 0x12, 0x0a, 0x04, 0x70, 0x61, 0x69, 0x64, 0x18, 0x02, 0x20, 0x01, 0x28, 0x08, 0x52, 0x04, 0x70, + 0x61, 0x69, 0x64, 0x12, 0x21, 0x0a, 0x0c, 0x72, 0x65, 0x63, 0x65, 0x69, 0x70, 0x74, 0x5f, 0x6c, + 0x69, 0x6e, 0x6b, 0x18, 0x03, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0b, 0x72, 0x65, 0x63, 0x65, 0x69, + 0x70, 0x74, 0x4c, 0x69, 0x6e, 0x6b, 0x12, 0x21, 0x0a, 0x0c, 0x70, 0x61, 0x79, 0x6d, 0x65, 0x6e, + 0x74, 0x5f, 0x6c, 0x69, 0x6e, 0x6b, 0x18, 0x04, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0b, 0x70, 0x61, + 0x79, 0x6d, 0x65, 0x6e, 0x74, 0x4c, 0x69, 0x6e, 0x6b, 0x12, 0x1d, 0x0a, 0x0a, 0x63, 0x72, 0x65, + 0x61, 0x74, 0x65, 0x64, 0x5f, 0x61, 0x74, 0x18, 0x05, 0x20, 0x01, 0x28, 0x04, 0x52, 0x09, 0x63, + 0x72, 0x65, 0x61, 0x74, 0x65, 0x64, 0x41, 0x74, 0x12, 0x25, 0x0a, 0x0e, 0x61, 0x6d, 0x6f, 0x75, + 0x6e, 0x74, 0x5f, 0x63, 0x72, 0x65, 0x64, 0x69, 0x74, 0x73, 0x18, 0x06, 0x20, 0x01, 0x28, 0x04, + 0x52, 0x0d, 0x61, 0x6d, 0x6f, 0x75, 0x6e, 0x74, 0x43, 0x72, 0x65, 0x64, 0x69, 0x74, 0x73, 0x22, + 0x49, 0x0a, 0x07, 0x43, 0x68, 0x61, 0x72, 0x67, 0x65, 0x73, 0x12, 0x3e, 0x0a, 0x07, 0x63, 0x68, + 0x61, 0x72, 0x67, 0x65, 0x73, 0x18, 0x01, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x24, 0x2e, 0x73, 0x74, + 0x61, 0x62, 0x69, 0x6c, 0x69, 0x74, 0x79, 0x61, 0x69, 0x2e, 0x61, 0x70, 0x69, 0x2e, 0x64, 0x61, + 0x73, 0x68, 0x62, 0x6f, 0x61, 0x72, 0x64, 0x2e, 0x76, 0x31, 0x2e, 0x43, 0x68, 0x61, 0x72, 0x67, + 0x65, 0x52, 0x07, 0x63, 0x68, 0x61, 0x72, 0x67, 0x65, 0x73, 0x22, 0x3f, 0x0a, 0x14, 0x47, 0x65, + 0x74, 0x41, 0x75, 0x74, 0x6f, 0x43, 0x68, 0x61, 0x72, 0x67, 0x65, 0x52, 0x65, 0x71, 0x75, 0x65, + 0x73, 0x74, 0x12, 0x27, 0x0a, 0x0f, 0x6f, 0x72, 0x67, 0x61, 0x6e, 0x69, 0x7a, 0x61, 0x74, 0x69, + 0x6f, 0x6e, 0x5f, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0e, 0x6f, 0x72, 0x67, + 0x61, 0x6e, 0x69, 0x7a, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x49, 0x64, 0x22, 0xd9, 0x01, 0x0a, 0x10, + 0x41, 0x75, 0x74, 0x6f, 0x43, 0x68, 0x61, 0x72, 0x67, 0x65, 0x49, 0x6e, 0x74, 0x65, 0x6e, 0x74, + 0x12, 0x0e, 0x0a, 0x02, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x02, 0x69, 0x64, + 0x12, 0x21, 0x0a, 0x0c, 0x70, 0x61, 0x79, 0x6d, 0x65, 0x6e, 0x74, 0x5f, 0x6c, 0x69, 0x6e, 0x6b, + 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0b, 0x70, 0x61, 0x79, 0x6d, 0x65, 0x6e, 0x74, 0x4c, + 0x69, 0x6e, 0x6b, 0x12, 0x1d, 0x0a, 0x0a, 0x63, 0x72, 0x65, 0x61, 0x74, 0x65, 0x64, 0x5f, 0x61, + 0x74, 0x18, 0x03, 0x20, 0x01, 0x28, 0x04, 0x52, 0x09, 0x63, 0x72, 0x65, 0x61, 0x74, 0x65, 0x64, + 0x41, 0x74, 0x12, 0x27, 0x0a, 0x0f, 0x6d, 0x6f, 0x6e, 0x74, 0x68, 0x6c, 0x79, 0x5f, 0x6d, 0x61, + 0x78, 0x69, 0x6d, 0x75, 0x6d, 0x18, 0x04, 0x20, 0x01, 0x28, 0x04, 0x52, 0x0e, 0x6d, 0x6f, 0x6e, + 0x74, 0x68, 0x6c, 0x79, 0x4d, 0x61, 0x78, 0x69, 0x6d, 0x75, 0x6d, 0x12, 0x23, 0x0a, 0x0d, 0x6d, + 0x69, 0x6e, 0x69, 0x6d, 0x75, 0x6d, 0x5f, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x18, 0x05, 0x20, 0x01, + 0x28, 0x04, 0x52, 0x0c, 0x6d, 0x69, 0x6e, 0x69, 0x6d, 0x75, 0x6d, 0x56, 0x61, 0x6c, 0x75, 0x65, + 0x12, 0x25, 0x0a, 0x0e, 0x61, 0x6d, 0x6f, 0x75, 0x6e, 0x74, 0x5f, 0x63, 0x72, 0x65, 0x64, 0x69, + 0x74, 0x73, 0x18, 0x06, 0x20, 0x01, 0x28, 0x04, 0x52, 0x0d, 0x61, 0x6d, 0x6f, 0x75, 0x6e, 0x74, + 0x43, 0x72, 0x65, 0x64, 0x69, 0x74, 0x73, 0x22, 0x3c, 0x0a, 0x15, 0x55, 0x70, 0x64, 0x61, 0x74, + 0x65, 0x55, 0x73, 0x65, 0x72, 0x49, 0x6e, 0x66, 0x6f, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, + 0x12, 0x19, 0x0a, 0x05, 0x65, 0x6d, 0x61, 0x69, 0x6c, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x48, + 0x00, 0x52, 0x05, 0x65, 0x6d, 0x61, 0x69, 0x6c, 0x88, 0x01, 0x01, 0x42, 0x08, 0x0a, 0x06, 0x5f, + 0x65, 0x6d, 0x61, 0x69, 0x6c, 0x22, 0x32, 0x0a, 0x18, 0x55, 0x73, 0x65, 0x72, 0x50, 0x61, 0x73, + 0x73, 0x77, 0x6f, 0x72, 0x64, 0x43, 0x68, 0x61, 0x6e, 0x67, 0x65, 0x54, 0x69, 0x63, 0x6b, 0x65, + 0x74, 0x12, 0x16, 0x0a, 0x06, 0x74, 0x69, 0x63, 0x6b, 0x65, 0x74, 0x18, 0x01, 0x20, 0x01, 0x28, + 0x09, 0x52, 0x06, 0x74, 0x69, 0x63, 0x6b, 0x65, 0x74, 0x2a, 0x39, 0x0a, 0x10, 0x4f, 0x72, 0x67, + 0x61, 0x6e, 0x69, 0x7a, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x52, 0x6f, 0x6c, 0x65, 0x12, 0x0a, 0x0a, + 0x06, 0x4d, 0x45, 0x4d, 0x42, 0x45, 0x52, 0x10, 0x00, 0x12, 0x0e, 0x0a, 0x0a, 0x41, 0x43, 0x43, + 0x4f, 0x55, 0x4e, 0x54, 0x41, 0x4e, 0x54, 0x10, 0x01, 0x12, 0x09, 0x0a, 0x05, 0x4f, 0x57, 0x4e, + 0x45, 0x52, 0x10, 0x02, 0x32, 0x9a, 0x0e, 0x0a, 0x10, 0x44, 0x61, 0x73, 0x68, 0x62, 0x6f, 0x61, + 0x72, 0x64, 0x53, 0x65, 0x72, 0x76, 0x69, 0x63, 0x65, 0x12, 0x57, 0x0a, 0x05, 0x47, 0x65, 0x74, + 0x4d, 0x65, 0x12, 0x2a, 0x2e, 0x73, 0x74, 0x61, 0x62, 0x69, 0x6c, 0x69, 0x74, 0x79, 0x61, 0x69, + 0x2e, 0x61, 0x70, 0x69, 0x2e, 0x64, 0x61, 0x73, 0x68, 0x62, 0x6f, 0x61, 0x72, 0x64, 0x2e, 0x76, + 0x31, 0x2e, 0x45, 0x6d, 0x70, 0x74, 0x79, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x22, + 0x2e, 0x73, 0x74, 0x61, 0x62, 0x69, 0x6c, 0x69, 0x74, 0x79, 0x61, 0x69, 0x2e, 0x61, 0x70, 0x69, + 0x2e, 0x64, 0x61, 0x73, 0x68, 0x62, 0x6f, 0x61, 0x72, 0x64, 0x2e, 0x76, 0x31, 0x2e, 0x55, 0x73, + 0x65, 0x72, 0x12, 0x73, 0x0a, 0x0f, 0x47, 0x65, 0x74, 0x4f, 0x72, 0x67, 0x61, 0x6e, 0x69, 0x7a, + 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x12, 0x34, 0x2e, 0x73, 0x74, 0x61, 0x62, 0x69, 0x6c, 0x69, 0x74, + 0x79, 0x61, 0x69, 0x2e, 0x61, 0x70, 0x69, 0x2e, 0x64, 0x61, 0x73, 0x68, 0x62, 0x6f, 0x61, 0x72, + 0x64, 0x2e, 0x76, 0x31, 0x2e, 0x47, 0x65, 0x74, 0x4f, 0x72, 0x67, 0x61, 0x6e, 0x69, 0x7a, 0x61, + 0x74, 0x69, 0x6f, 0x6e, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x2a, 0x2e, 0x73, 0x74, + 0x61, 0x62, 0x69, 0x6c, 0x69, 0x74, 0x79, 0x61, 0x69, 0x2e, 0x61, 0x70, 0x69, 0x2e, 0x64, 0x61, + 0x73, 0x68, 0x62, 0x6f, 0x61, 0x72, 0x64, 0x2e, 0x76, 0x31, 0x2e, 0x4f, 0x72, 0x67, 0x61, 0x6e, + 0x69, 0x7a, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x12, 0x64, 0x0a, 0x0a, 0x47, 0x65, 0x74, 0x4d, 0x65, + 0x74, 0x72, 0x69, 0x63, 0x73, 0x12, 0x2f, 0x2e, 0x73, 0x74, 0x61, 0x62, 0x69, 0x6c, 0x69, 0x74, + 0x79, 0x61, 0x69, 0x2e, 0x61, 0x70, 0x69, 0x2e, 0x64, 0x61, 0x73, 0x68, 0x62, 0x6f, 0x61, 0x72, + 0x64, 0x2e, 0x76, 0x31, 0x2e, 0x47, 0x65, 0x74, 0x4d, 0x65, 0x74, 0x72, 0x69, 0x63, 0x73, 0x52, + 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x25, 0x2e, 0x73, 0x74, 0x61, 0x62, 0x69, 0x6c, 0x69, + 0x74, 0x79, 0x61, 0x69, 0x2e, 0x61, 0x70, 0x69, 0x2e, 0x64, 0x61, 0x73, 0x68, 0x62, 0x6f, 0x61, + 0x72, 0x64, 0x2e, 0x76, 0x31, 0x2e, 0x4d, 0x65, 0x74, 0x72, 0x69, 0x63, 0x73, 0x12, 0x61, 0x0a, + 0x0c, 0x43, 0x72, 0x65, 0x61, 0x74, 0x65, 0x41, 0x50, 0x49, 0x4b, 0x65, 0x79, 0x12, 0x2b, 0x2e, + 0x73, 0x74, 0x61, 0x62, 0x69, 0x6c, 0x69, 0x74, 0x79, 0x61, 0x69, 0x2e, 0x61, 0x70, 0x69, 0x2e, + 0x64, 0x61, 0x73, 0x68, 0x62, 0x6f, 0x61, 0x72, 0x64, 0x2e, 0x76, 0x31, 0x2e, 0x41, 0x50, 0x49, + 0x4b, 0x65, 0x79, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x24, 0x2e, 0x73, 0x74, 0x61, + 0x62, 0x69, 0x6c, 0x69, 0x74, 0x79, 0x61, 0x69, 0x2e, 0x61, 0x70, 0x69, 0x2e, 0x64, 0x61, 0x73, + 0x68, 0x62, 0x6f, 0x61, 0x72, 0x64, 0x2e, 0x76, 0x31, 0x2e, 0x41, 0x50, 0x49, 0x4b, 0x65, 0x79, + 0x12, 0x65, 0x0a, 0x0c, 0x44, 0x65, 0x6c, 0x65, 0x74, 0x65, 0x41, 0x50, 0x49, 0x4b, 0x65, 0x79, + 0x12, 0x2f, 0x2e, 0x73, 0x74, 0x61, 0x62, 0x69, 0x6c, 0x69, 0x74, 0x79, 0x61, 0x69, 0x2e, 0x61, + 0x70, 0x69, 0x2e, 0x64, 0x61, 0x73, 0x68, 0x62, 0x6f, 0x61, 0x72, 0x64, 0x2e, 0x76, 0x31, 0x2e, + 0x41, 0x50, 0x49, 0x4b, 0x65, 0x79, 0x46, 0x69, 0x6e, 0x64, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, + 0x74, 0x1a, 0x24, 0x2e, 0x73, 0x74, 0x61, 0x62, 0x69, 0x6c, 0x69, 0x74, 0x79, 0x61, 0x69, 0x2e, + 0x61, 0x70, 0x69, 0x2e, 0x64, 0x61, 0x73, 0x68, 0x62, 0x6f, 0x61, 0x72, 0x64, 0x2e, 0x76, 0x31, + 0x2e, 0x41, 0x50, 0x49, 0x4b, 0x65, 0x79, 0x12, 0x7f, 0x0a, 0x19, 0x55, 0x70, 0x64, 0x61, 0x74, + 0x65, 0x44, 0x65, 0x66, 0x61, 0x75, 0x6c, 0x74, 0x4f, 0x72, 0x67, 0x61, 0x6e, 0x69, 0x7a, 0x61, + 0x74, 0x69, 0x6f, 0x6e, 0x12, 0x3e, 0x2e, 0x73, 0x74, 0x61, 0x62, 0x69, 0x6c, 0x69, 0x74, 0x79, + 0x61, 0x69, 0x2e, 0x61, 0x70, 0x69, 0x2e, 0x64, 0x61, 0x73, 0x68, 0x62, 0x6f, 0x61, 0x72, 0x64, + 0x2e, 0x76, 0x31, 0x2e, 0x55, 0x70, 0x64, 0x61, 0x74, 0x65, 0x44, 0x65, 0x66, 0x61, 0x75, 0x6c, + 0x74, 0x4f, 0x72, 0x67, 0x61, 0x6e, 0x69, 0x7a, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x52, 0x65, 0x71, + 0x75, 0x65, 0x73, 0x74, 0x1a, 0x22, 0x2e, 0x73, 0x74, 0x61, 0x62, 0x69, 0x6c, 0x69, 0x74, 0x79, + 0x61, 0x69, 0x2e, 0x61, 0x70, 0x69, 0x2e, 0x64, 0x61, 0x73, 0x68, 0x62, 0x6f, 0x61, 0x72, 0x64, + 0x2e, 0x76, 0x31, 0x2e, 0x55, 0x73, 0x65, 0x72, 0x12, 0x6d, 0x0a, 0x11, 0x47, 0x65, 0x74, 0x43, + 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x53, 0x65, 0x74, 0x74, 0x69, 0x6e, 0x67, 0x73, 0x12, 0x2a, 0x2e, + 0x73, 0x74, 0x61, 0x62, 0x69, 0x6c, 0x69, 0x74, 0x79, 0x61, 0x69, 0x2e, 0x61, 0x70, 0x69, 0x2e, + 0x64, 0x61, 0x73, 0x68, 0x62, 0x6f, 0x61, 0x72, 0x64, 0x2e, 0x76, 0x31, 0x2e, 0x45, 0x6d, 0x70, + 0x74, 0x79, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x2c, 0x2e, 0x73, 0x74, 0x61, 0x62, + 0x69, 0x6c, 0x69, 0x74, 0x79, 0x61, 0x69, 0x2e, 0x61, 0x70, 0x69, 0x2e, 0x64, 0x61, 0x73, 0x68, + 0x62, 0x6f, 0x61, 0x72, 0x64, 0x2e, 0x76, 0x31, 0x2e, 0x43, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x53, + 0x65, 0x74, 0x74, 0x69, 0x6e, 0x67, 0x73, 0x12, 0x6f, 0x0a, 0x11, 0x53, 0x65, 0x74, 0x43, 0x6c, + 0x69, 0x65, 0x6e, 0x74, 0x53, 0x65, 0x74, 0x74, 0x69, 0x6e, 0x67, 0x73, 0x12, 0x2c, 0x2e, 0x73, + 0x74, 0x61, 0x62, 0x69, 0x6c, 0x69, 0x74, 0x79, 0x61, 0x69, 0x2e, 0x61, 0x70, 0x69, 0x2e, 0x64, + 0x61, 0x73, 0x68, 0x62, 0x6f, 0x61, 0x72, 0x64, 0x2e, 0x76, 0x31, 0x2e, 0x43, 0x6c, 0x69, 0x65, + 0x6e, 0x74, 0x53, 0x65, 0x74, 0x74, 0x69, 0x6e, 0x67, 0x73, 0x1a, 0x2c, 0x2e, 0x73, 0x74, 0x61, + 0x62, 0x69, 0x6c, 0x69, 0x74, 0x79, 0x61, 0x69, 0x2e, 0x61, 0x70, 0x69, 0x2e, 0x64, 0x61, 0x73, + 0x68, 0x62, 0x6f, 0x61, 0x72, 0x64, 0x2e, 0x76, 0x31, 0x2e, 0x43, 0x6c, 0x69, 0x65, 0x6e, 0x74, + 0x53, 0x65, 0x74, 0x74, 0x69, 0x6e, 0x67, 0x73, 0x12, 0x69, 0x0a, 0x0e, 0x55, 0x70, 0x64, 0x61, + 0x74, 0x65, 0x55, 0x73, 0x65, 0x72, 0x49, 0x6e, 0x66, 0x6f, 0x12, 0x33, 0x2e, 0x73, 0x74, 0x61, + 0x62, 0x69, 0x6c, 0x69, 0x74, 0x79, 0x61, 0x69, 0x2e, 0x61, 0x70, 0x69, 0x2e, 0x64, 0x61, 0x73, + 0x68, 0x62, 0x6f, 0x61, 0x72, 0x64, 0x2e, 0x76, 0x31, 0x2e, 0x55, 0x70, 0x64, 0x61, 0x74, 0x65, + 0x55, 0x73, 0x65, 0x72, 0x49, 0x6e, 0x66, 0x6f, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, + 0x22, 0x2e, 0x73, 0x74, 0x61, 0x62, 0x69, 0x6c, 0x69, 0x74, 0x79, 0x61, 0x69, 0x2e, 0x61, 0x70, + 0x69, 0x2e, 0x64, 0x61, 0x73, 0x68, 0x62, 0x6f, 0x61, 0x72, 0x64, 0x2e, 0x76, 0x31, 0x2e, 0x55, + 0x73, 0x65, 0x72, 0x12, 0x80, 0x01, 0x0a, 0x1a, 0x43, 0x72, 0x65, 0x61, 0x74, 0x65, 0x50, 0x61, + 0x73, 0x73, 0x77, 0x6f, 0x72, 0x64, 0x43, 0x68, 0x61, 0x6e, 0x67, 0x65, 0x54, 0x69, 0x63, 0x6b, + 0x65, 0x74, 0x12, 0x2a, 0x2e, 0x73, 0x74, 0x61, 0x62, 0x69, 0x6c, 0x69, 0x74, 0x79, 0x61, 0x69, + 0x2e, 0x61, 0x70, 0x69, 0x2e, 0x64, 0x61, 0x73, 0x68, 0x62, 0x6f, 0x61, 0x72, 0x64, 0x2e, 0x76, + 0x31, 0x2e, 0x45, 0x6d, 0x70, 0x74, 0x79, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x36, + 0x2e, 0x73, 0x74, 0x61, 0x62, 0x69, 0x6c, 0x69, 0x74, 0x79, 0x61, 0x69, 0x2e, 0x61, 0x70, 0x69, + 0x2e, 0x64, 0x61, 0x73, 0x68, 0x62, 0x6f, 0x61, 0x72, 0x64, 0x2e, 0x76, 0x31, 0x2e, 0x55, 0x73, + 0x65, 0x72, 0x50, 0x61, 0x73, 0x73, 0x77, 0x6f, 0x72, 0x64, 0x43, 0x68, 0x61, 0x6e, 0x67, 0x65, + 0x54, 0x69, 0x63, 0x6b, 0x65, 0x74, 0x12, 0x5f, 0x0a, 0x0d, 0x44, 0x65, 0x6c, 0x65, 0x74, 0x65, + 0x41, 0x63, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x12, 0x2a, 0x2e, 0x73, 0x74, 0x61, 0x62, 0x69, 0x6c, + 0x69, 0x74, 0x79, 0x61, 0x69, 0x2e, 0x61, 0x70, 0x69, 0x2e, 0x64, 0x61, 0x73, 0x68, 0x62, 0x6f, + 0x61, 0x72, 0x64, 0x2e, 0x76, 0x31, 0x2e, 0x45, 0x6d, 0x70, 0x74, 0x79, 0x52, 0x65, 0x71, 0x75, + 0x65, 0x73, 0x74, 0x1a, 0x22, 0x2e, 0x73, 0x74, 0x61, 0x62, 0x69, 0x6c, 0x69, 0x74, 0x79, 0x61, + 0x69, 0x2e, 0x61, 0x70, 0x69, 0x2e, 0x64, 0x61, 0x73, 0x68, 0x62, 0x6f, 0x61, 0x72, 0x64, 0x2e, + 0x76, 0x31, 0x2e, 0x55, 0x73, 0x65, 0x72, 0x12, 0x67, 0x0a, 0x0c, 0x43, 0x72, 0x65, 0x61, 0x74, + 0x65, 0x43, 0x68, 0x61, 0x72, 0x67, 0x65, 0x12, 0x31, 0x2e, 0x73, 0x74, 0x61, 0x62, 0x69, 0x6c, + 0x69, 0x74, 0x79, 0x61, 0x69, 0x2e, 0x61, 0x70, 0x69, 0x2e, 0x64, 0x61, 0x73, 0x68, 0x62, 0x6f, + 0x61, 0x72, 0x64, 0x2e, 0x76, 0x31, 0x2e, 0x43, 0x72, 0x65, 0x61, 0x74, 0x65, 0x43, 0x68, 0x61, + 0x72, 0x67, 0x65, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x24, 0x2e, 0x73, 0x74, 0x61, + 0x62, 0x69, 0x6c, 0x69, 0x74, 0x79, 0x61, 0x69, 0x2e, 0x61, 0x70, 0x69, 0x2e, 0x64, 0x61, 0x73, + 0x68, 0x62, 0x6f, 0x61, 0x72, 0x64, 0x2e, 0x76, 0x31, 0x2e, 0x43, 0x68, 0x61, 0x72, 0x67, 0x65, + 0x12, 0x64, 0x0a, 0x0a, 0x47, 0x65, 0x74, 0x43, 0x68, 0x61, 0x72, 0x67, 0x65, 0x73, 0x12, 0x2f, + 0x2e, 0x73, 0x74, 0x61, 0x62, 0x69, 0x6c, 0x69, 0x74, 0x79, 0x61, 0x69, 0x2e, 0x61, 0x70, 0x69, + 0x2e, 0x64, 0x61, 0x73, 0x68, 0x62, 0x6f, 0x61, 0x72, 0x64, 0x2e, 0x76, 0x31, 0x2e, 0x47, 0x65, + 0x74, 0x43, 0x68, 0x61, 0x72, 0x67, 0x65, 0x73, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, + 0x25, 0x2e, 0x73, 0x74, 0x61, 0x62, 0x69, 0x6c, 0x69, 0x74, 0x79, 0x61, 0x69, 0x2e, 0x61, 0x70, + 0x69, 0x2e, 0x64, 0x61, 0x73, 0x68, 0x62, 0x6f, 0x61, 0x72, 0x64, 0x2e, 0x76, 0x31, 0x2e, 0x43, + 0x68, 0x61, 0x72, 0x67, 0x65, 0x73, 0x12, 0x85, 0x01, 0x0a, 0x16, 0x43, 0x72, 0x65, 0x61, 0x74, + 0x65, 0x41, 0x75, 0x74, 0x6f, 0x43, 0x68, 0x61, 0x72, 0x67, 0x65, 0x49, 0x6e, 0x74, 0x65, 0x6e, + 0x74, 0x12, 0x3b, 0x2e, 0x73, 0x74, 0x61, 0x62, 0x69, 0x6c, 0x69, 0x74, 0x79, 0x61, 0x69, 0x2e, + 0x61, 0x70, 0x69, 0x2e, 0x64, 0x61, 0x73, 0x68, 0x62, 0x6f, 0x61, 0x72, 0x64, 0x2e, 0x76, 0x31, + 0x2e, 0x43, 0x72, 0x65, 0x61, 0x74, 0x65, 0x41, 0x75, 0x74, 0x6f, 0x43, 0x68, 0x61, 0x72, 0x67, + 0x65, 0x49, 0x6e, 0x74, 0x65, 0x6e, 0x74, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x2e, + 0x2e, 0x73, 0x74, 0x61, 0x62, 0x69, 0x6c, 0x69, 0x74, 0x79, 0x61, 0x69, 0x2e, 0x61, 0x70, 0x69, + 0x2e, 0x64, 0x61, 0x73, 0x68, 0x62, 0x6f, 0x61, 0x72, 0x64, 0x2e, 0x76, 0x31, 0x2e, 0x41, 0x75, + 0x74, 0x6f, 0x43, 0x68, 0x61, 0x72, 0x67, 0x65, 0x49, 0x6e, 0x74, 0x65, 0x6e, 0x74, 0x12, 0x85, + 0x01, 0x0a, 0x16, 0x55, 0x70, 0x64, 0x61, 0x74, 0x65, 0x41, 0x75, 0x74, 0x6f, 0x43, 0x68, 0x61, + 0x72, 0x67, 0x65, 0x49, 0x6e, 0x74, 0x65, 0x6e, 0x74, 0x12, 0x3b, 0x2e, 0x73, 0x74, 0x61, 0x62, + 0x69, 0x6c, 0x69, 0x74, 0x79, 0x61, 0x69, 0x2e, 0x61, 0x70, 0x69, 0x2e, 0x64, 0x61, 0x73, 0x68, + 0x62, 0x6f, 0x61, 0x72, 0x64, 0x2e, 0x76, 0x31, 0x2e, 0x43, 0x72, 0x65, 0x61, 0x74, 0x65, 0x41, + 0x75, 0x74, 0x6f, 0x43, 0x68, 0x61, 0x72, 0x67, 0x65, 0x49, 0x6e, 0x74, 0x65, 0x6e, 0x74, 0x52, + 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x2e, 0x2e, 0x73, 0x74, 0x61, 0x62, 0x69, 0x6c, 0x69, + 0x74, 0x79, 0x61, 0x69, 0x2e, 0x61, 0x70, 0x69, 0x2e, 0x64, 0x61, 0x73, 0x68, 0x62, 0x6f, 0x61, + 0x72, 0x64, 0x2e, 0x76, 0x31, 0x2e, 0x41, 0x75, 0x74, 0x6f, 0x43, 0x68, 0x61, 0x72, 0x67, 0x65, + 0x49, 0x6e, 0x74, 0x65, 0x6e, 0x74, 0x12, 0x79, 0x0a, 0x13, 0x47, 0x65, 0x74, 0x41, 0x75, 0x74, + 0x6f, 0x43, 0x68, 0x61, 0x72, 0x67, 0x65, 0x49, 0x6e, 0x74, 0x65, 0x6e, 0x74, 0x12, 0x32, 0x2e, + 0x73, 0x74, 0x61, 0x62, 0x69, 0x6c, 0x69, 0x74, 0x79, 0x61, 0x69, 0x2e, 0x61, 0x70, 0x69, 0x2e, + 0x64, 0x61, 0x73, 0x68, 0x62, 0x6f, 0x61, 0x72, 0x64, 0x2e, 0x76, 0x31, 0x2e, 0x47, 0x65, 0x74, + 0x41, 0x75, 0x74, 0x6f, 0x43, 0x68, 0x61, 0x72, 0x67, 0x65, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, + 0x74, 0x1a, 0x2e, 0x2e, 0x73, 0x74, 0x61, 0x62, 0x69, 0x6c, 0x69, 0x74, 0x79, 0x61, 0x69, 0x2e, + 0x61, 0x70, 0x69, 0x2e, 0x64, 0x61, 0x73, 0x68, 0x62, 0x6f, 0x61, 0x72, 0x64, 0x2e, 0x76, 0x31, + 0x2e, 0x41, 0x75, 0x74, 0x6f, 0x43, 0x68, 0x61, 0x72, 0x67, 0x65, 0x49, 0x6e, 0x74, 0x65, 0x6e, + 0x74, 0x42, 0xa1, 0x02, 0x0a, 0x20, 0x63, 0x6f, 0x6d, 0x2e, 0x73, 0x74, 0x61, 0x62, 0x69, 0x6c, + 0x69, 0x74, 0x79, 0x61, 0x69, 0x2e, 0x61, 0x70, 0x69, 0x2e, 0x64, 0x61, 0x73, 0x68, 0x62, 0x6f, + 0x61, 0x72, 0x64, 0x2e, 0x76, 0x31, 0x42, 0x0e, 0x44, 0x61, 0x73, 0x68, 0x62, 0x6f, 0x61, 0x72, + 0x64, 0x50, 0x72, 0x6f, 0x74, 0x6f, 0x50, 0x01, 0x5a, 0x5a, 0x67, 0x69, 0x74, 0x68, 0x75, 0x62, + 0x2e, 0x63, 0x6f, 0x6d, 0x2f, 0x73, 0x74, 0x61, 0x62, 0x69, 0x6c, 0x69, 0x74, 0x79, 0x2d, 0x61, + 0x69, 0x2f, 0x61, 0x70, 0x69, 0x2d, 0x69, 0x6e, 0x74, 0x65, 0x72, 0x66, 0x61, 0x63, 0x65, 0x73, + 0x2f, 0x73, 0x72, 0x63, 0x2f, 0x73, 0x74, 0x61, 0x62, 0x69, 0x6c, 0x69, 0x74, 0x79, 0x5f, 0x61, + 0x70, 0x69, 0x2f, 0x70, 0x6c, 0x61, 0x74, 0x66, 0x6f, 0x72, 0x6d, 0x2f, 0x64, 0x61, 0x73, 0x68, + 0x62, 0x6f, 0x61, 0x72, 0x64, 0x2f, 0x76, 0x31, 0x3b, 0x64, 0x61, 0x73, 0x68, 0x62, 0x6f, 0x61, + 0x72, 0x64, 0x76, 0x31, 0xa2, 0x02, 0x03, 0x53, 0x41, 0x44, 0xaa, 0x02, 0x1c, 0x53, 0x74, 0x61, + 0x62, 0x69, 0x6c, 0x69, 0x74, 0x79, 0x61, 0x69, 0x2e, 0x41, 0x70, 0x69, 0x2e, 0x44, 0x61, 0x73, + 0x68, 0x62, 0x6f, 0x61, 0x72, 0x64, 0x2e, 0x56, 0x31, 0xca, 0x02, 0x1c, 0x53, 0x74, 0x61, 0x62, + 0x69, 0x6c, 0x69, 0x74, 0x79, 0x61, 0x69, 0x5c, 0x41, 0x70, 0x69, 0x5c, 0x44, 0x61, 0x73, 0x68, + 0x62, 0x6f, 0x61, 0x72, 0x64, 0x5c, 0x56, 0x31, 0xe2, 0x02, 0x28, 0x53, 0x74, 0x61, 0x62, 0x69, + 0x6c, 0x69, 0x74, 0x79, 0x61, 0x69, 0x5c, 0x41, 0x70, 0x69, 0x5c, 0x44, 0x61, 0x73, 0x68, 0x62, + 0x6f, 0x61, 0x72, 0x64, 0x5c, 0x56, 0x31, 0x5c, 0x47, 0x50, 0x42, 0x4d, 0x65, 0x74, 0x61, 0x64, + 0x61, 0x74, 0x61, 0xea, 0x02, 0x1f, 0x53, 0x74, 0x61, 0x62, 0x69, 0x6c, 0x69, 0x74, 0x79, 0x61, + 0x69, 0x3a, 0x3a, 0x41, 0x70, 0x69, 0x3a, 0x3a, 0x44, 0x61, 0x73, 0x68, 0x62, 0x6f, 0x61, 0x72, + 0x64, 0x3a, 0x3a, 0x56, 0x31, 0x62, 0x06, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x33, +} + +var ( + file_stability_api_platform_dashboard_v1_dashboard_proto_rawDescOnce sync.Once + file_stability_api_platform_dashboard_v1_dashboard_proto_rawDescData = file_stability_api_platform_dashboard_v1_dashboard_proto_rawDesc +) + +func file_stability_api_platform_dashboard_v1_dashboard_proto_rawDescGZIP() []byte { + file_stability_api_platform_dashboard_v1_dashboard_proto_rawDescOnce.Do(func() { + file_stability_api_platform_dashboard_v1_dashboard_proto_rawDescData = protoimpl.X.CompressGZIP(file_stability_api_platform_dashboard_v1_dashboard_proto_rawDescData) + }) + return file_stability_api_platform_dashboard_v1_dashboard_proto_rawDescData +} + +var file_stability_api_platform_dashboard_v1_dashboard_proto_enumTypes = make([]protoimpl.EnumInfo, 1) +var file_stability_api_platform_dashboard_v1_dashboard_proto_msgTypes = make([]protoimpl.MessageInfo, 28) +var file_stability_api_platform_dashboard_v1_dashboard_proto_goTypes = []interface{}{ + (OrganizationRole)(0), // 0: stabilityai.api.dashboard.v1.OrganizationRole + (*OrganizationMember)(nil), // 1: stabilityai.api.dashboard.v1.OrganizationMember + (*OrganizationGrant)(nil), // 2: stabilityai.api.dashboard.v1.OrganizationGrant + (*OrganizationPaymentInfo)(nil), // 3: stabilityai.api.dashboard.v1.OrganizationPaymentInfo + (*OrganizationAutoCharge)(nil), // 4: stabilityai.api.dashboard.v1.OrganizationAutoCharge + (*Organization)(nil), // 5: stabilityai.api.dashboard.v1.Organization + (*APIKey)(nil), // 6: stabilityai.api.dashboard.v1.APIKey + (*User)(nil), // 7: stabilityai.api.dashboard.v1.User + (*CostData)(nil), // 8: stabilityai.api.dashboard.v1.CostData + (*UsageMetric)(nil), // 9: stabilityai.api.dashboard.v1.UsageMetric + (*CostTotal)(nil), // 10: stabilityai.api.dashboard.v1.CostTotal + (*TotalMetricsData)(nil), // 11: stabilityai.api.dashboard.v1.TotalMetricsData + (*Metrics)(nil), // 12: stabilityai.api.dashboard.v1.Metrics + (*EmptyRequest)(nil), // 13: stabilityai.api.dashboard.v1.EmptyRequest + (*GetOrganizationRequest)(nil), // 14: stabilityai.api.dashboard.v1.GetOrganizationRequest + (*GetMetricsRequest)(nil), // 15: stabilityai.api.dashboard.v1.GetMetricsRequest + (*APIKeyRequest)(nil), // 16: stabilityai.api.dashboard.v1.APIKeyRequest + (*APIKeyFindRequest)(nil), // 17: stabilityai.api.dashboard.v1.APIKeyFindRequest + (*UpdateDefaultOrganizationRequest)(nil), // 18: stabilityai.api.dashboard.v1.UpdateDefaultOrganizationRequest + (*ClientSettings)(nil), // 19: stabilityai.api.dashboard.v1.ClientSettings + (*CreateAutoChargeIntentRequest)(nil), // 20: stabilityai.api.dashboard.v1.CreateAutoChargeIntentRequest + (*CreateChargeRequest)(nil), // 21: stabilityai.api.dashboard.v1.CreateChargeRequest + (*GetChargesRequest)(nil), // 22: stabilityai.api.dashboard.v1.GetChargesRequest + (*Charge)(nil), // 23: stabilityai.api.dashboard.v1.Charge + (*Charges)(nil), // 24: stabilityai.api.dashboard.v1.Charges + (*GetAutoChargeRequest)(nil), // 25: stabilityai.api.dashboard.v1.GetAutoChargeRequest + (*AutoChargeIntent)(nil), // 26: stabilityai.api.dashboard.v1.AutoChargeIntent + (*UpdateUserInfoRequest)(nil), // 27: stabilityai.api.dashboard.v1.UpdateUserInfoRequest + (*UserPasswordChangeTicket)(nil), // 28: stabilityai.api.dashboard.v1.UserPasswordChangeTicket +} +var file_stability_api_platform_dashboard_v1_dashboard_proto_depIdxs = []int32{ + 5, // 0: stabilityai.api.dashboard.v1.OrganizationMember.organization:type_name -> stabilityai.api.dashboard.v1.Organization + 7, // 1: stabilityai.api.dashboard.v1.OrganizationMember.user:type_name -> stabilityai.api.dashboard.v1.User + 0, // 2: stabilityai.api.dashboard.v1.OrganizationMember.role:type_name -> stabilityai.api.dashboard.v1.OrganizationRole + 2, // 3: stabilityai.api.dashboard.v1.OrganizationPaymentInfo.grants:type_name -> stabilityai.api.dashboard.v1.OrganizationGrant + 1, // 4: stabilityai.api.dashboard.v1.Organization.members:type_name -> stabilityai.api.dashboard.v1.OrganizationMember + 3, // 5: stabilityai.api.dashboard.v1.Organization.payment_info:type_name -> stabilityai.api.dashboard.v1.OrganizationPaymentInfo + 4, // 6: stabilityai.api.dashboard.v1.Organization.auto_charge:type_name -> stabilityai.api.dashboard.v1.OrganizationAutoCharge + 1, // 7: stabilityai.api.dashboard.v1.User.organizations:type_name -> stabilityai.api.dashboard.v1.OrganizationMember + 6, // 8: stabilityai.api.dashboard.v1.User.api_keys:type_name -> stabilityai.api.dashboard.v1.APIKey + 8, // 9: stabilityai.api.dashboard.v1.UsageMetric.input_cost:type_name -> stabilityai.api.dashboard.v1.CostData + 8, // 10: stabilityai.api.dashboard.v1.UsageMetric.output_cost:type_name -> stabilityai.api.dashboard.v1.CostData + 10, // 11: stabilityai.api.dashboard.v1.TotalMetricsData.input_total:type_name -> stabilityai.api.dashboard.v1.CostTotal + 10, // 12: stabilityai.api.dashboard.v1.TotalMetricsData.output_total:type_name -> stabilityai.api.dashboard.v1.CostTotal + 9, // 13: stabilityai.api.dashboard.v1.Metrics.metrics:type_name -> stabilityai.api.dashboard.v1.UsageMetric + 11, // 14: stabilityai.api.dashboard.v1.Metrics.total:type_name -> stabilityai.api.dashboard.v1.TotalMetricsData + 23, // 15: stabilityai.api.dashboard.v1.Charges.charges:type_name -> stabilityai.api.dashboard.v1.Charge + 13, // 16: stabilityai.api.dashboard.v1.DashboardService.GetMe:input_type -> stabilityai.api.dashboard.v1.EmptyRequest + 14, // 17: stabilityai.api.dashboard.v1.DashboardService.GetOrganization:input_type -> stabilityai.api.dashboard.v1.GetOrganizationRequest + 15, // 18: stabilityai.api.dashboard.v1.DashboardService.GetMetrics:input_type -> stabilityai.api.dashboard.v1.GetMetricsRequest + 16, // 19: stabilityai.api.dashboard.v1.DashboardService.CreateAPIKey:input_type -> stabilityai.api.dashboard.v1.APIKeyRequest + 17, // 20: stabilityai.api.dashboard.v1.DashboardService.DeleteAPIKey:input_type -> stabilityai.api.dashboard.v1.APIKeyFindRequest + 18, // 21: stabilityai.api.dashboard.v1.DashboardService.UpdateDefaultOrganization:input_type -> stabilityai.api.dashboard.v1.UpdateDefaultOrganizationRequest + 13, // 22: stabilityai.api.dashboard.v1.DashboardService.GetClientSettings:input_type -> stabilityai.api.dashboard.v1.EmptyRequest + 19, // 23: stabilityai.api.dashboard.v1.DashboardService.SetClientSettings:input_type -> stabilityai.api.dashboard.v1.ClientSettings + 27, // 24: stabilityai.api.dashboard.v1.DashboardService.UpdateUserInfo:input_type -> stabilityai.api.dashboard.v1.UpdateUserInfoRequest + 13, // 25: stabilityai.api.dashboard.v1.DashboardService.CreatePasswordChangeTicket:input_type -> stabilityai.api.dashboard.v1.EmptyRequest + 13, // 26: stabilityai.api.dashboard.v1.DashboardService.DeleteAccount:input_type -> stabilityai.api.dashboard.v1.EmptyRequest + 21, // 27: stabilityai.api.dashboard.v1.DashboardService.CreateCharge:input_type -> stabilityai.api.dashboard.v1.CreateChargeRequest + 22, // 28: stabilityai.api.dashboard.v1.DashboardService.GetCharges:input_type -> stabilityai.api.dashboard.v1.GetChargesRequest + 20, // 29: stabilityai.api.dashboard.v1.DashboardService.CreateAutoChargeIntent:input_type -> stabilityai.api.dashboard.v1.CreateAutoChargeIntentRequest + 20, // 30: stabilityai.api.dashboard.v1.DashboardService.UpdateAutoChargeIntent:input_type -> stabilityai.api.dashboard.v1.CreateAutoChargeIntentRequest + 25, // 31: stabilityai.api.dashboard.v1.DashboardService.GetAutoChargeIntent:input_type -> stabilityai.api.dashboard.v1.GetAutoChargeRequest + 7, // 32: stabilityai.api.dashboard.v1.DashboardService.GetMe:output_type -> stabilityai.api.dashboard.v1.User + 5, // 33: stabilityai.api.dashboard.v1.DashboardService.GetOrganization:output_type -> stabilityai.api.dashboard.v1.Organization + 12, // 34: stabilityai.api.dashboard.v1.DashboardService.GetMetrics:output_type -> stabilityai.api.dashboard.v1.Metrics + 6, // 35: stabilityai.api.dashboard.v1.DashboardService.CreateAPIKey:output_type -> stabilityai.api.dashboard.v1.APIKey + 6, // 36: stabilityai.api.dashboard.v1.DashboardService.DeleteAPIKey:output_type -> stabilityai.api.dashboard.v1.APIKey + 7, // 37: stabilityai.api.dashboard.v1.DashboardService.UpdateDefaultOrganization:output_type -> stabilityai.api.dashboard.v1.User + 19, // 38: stabilityai.api.dashboard.v1.DashboardService.GetClientSettings:output_type -> stabilityai.api.dashboard.v1.ClientSettings + 19, // 39: stabilityai.api.dashboard.v1.DashboardService.SetClientSettings:output_type -> stabilityai.api.dashboard.v1.ClientSettings + 7, // 40: stabilityai.api.dashboard.v1.DashboardService.UpdateUserInfo:output_type -> stabilityai.api.dashboard.v1.User + 28, // 41: stabilityai.api.dashboard.v1.DashboardService.CreatePasswordChangeTicket:output_type -> stabilityai.api.dashboard.v1.UserPasswordChangeTicket + 7, // 42: stabilityai.api.dashboard.v1.DashboardService.DeleteAccount:output_type -> stabilityai.api.dashboard.v1.User + 23, // 43: stabilityai.api.dashboard.v1.DashboardService.CreateCharge:output_type -> stabilityai.api.dashboard.v1.Charge + 24, // 44: stabilityai.api.dashboard.v1.DashboardService.GetCharges:output_type -> stabilityai.api.dashboard.v1.Charges + 26, // 45: stabilityai.api.dashboard.v1.DashboardService.CreateAutoChargeIntent:output_type -> stabilityai.api.dashboard.v1.AutoChargeIntent + 26, // 46: stabilityai.api.dashboard.v1.DashboardService.UpdateAutoChargeIntent:output_type -> stabilityai.api.dashboard.v1.AutoChargeIntent + 26, // 47: stabilityai.api.dashboard.v1.DashboardService.GetAutoChargeIntent:output_type -> stabilityai.api.dashboard.v1.AutoChargeIntent + 32, // [32:48] is the sub-list for method output_type + 16, // [16:32] is the sub-list for method input_type + 16, // [16:16] is the sub-list for extension type_name + 16, // [16:16] is the sub-list for extension extendee + 0, // [0:16] is the sub-list for field type_name +} + +func init() { file_stability_api_platform_dashboard_v1_dashboard_proto_init() } +func file_stability_api_platform_dashboard_v1_dashboard_proto_init() { + if File_stability_api_platform_dashboard_v1_dashboard_proto != nil { + return + } + if !protoimpl.UnsafeEnabled { + file_stability_api_platform_dashboard_v1_dashboard_proto_msgTypes[0].Exporter = func(v interface{}, i int) interface{} { + switch v := v.(*OrganizationMember); i { + case 0: + return &v.state + case 1: + return &v.sizeCache + case 2: + return &v.unknownFields + default: + return nil + } + } + file_stability_api_platform_dashboard_v1_dashboard_proto_msgTypes[1].Exporter = func(v interface{}, i int) interface{} { + switch v := v.(*OrganizationGrant); i { + case 0: + return &v.state + case 1: + return &v.sizeCache + case 2: + return &v.unknownFields + default: + return nil + } + } + file_stability_api_platform_dashboard_v1_dashboard_proto_msgTypes[2].Exporter = func(v interface{}, i int) interface{} { + switch v := v.(*OrganizationPaymentInfo); i { + case 0: + return &v.state + case 1: + return &v.sizeCache + case 2: + return &v.unknownFields + default: + return nil + } + } + file_stability_api_platform_dashboard_v1_dashboard_proto_msgTypes[3].Exporter = func(v interface{}, i int) interface{} { + switch v := v.(*OrganizationAutoCharge); i { + case 0: + return &v.state + case 1: + return &v.sizeCache + case 2: + return &v.unknownFields + default: + return nil + } + } + file_stability_api_platform_dashboard_v1_dashboard_proto_msgTypes[4].Exporter = func(v interface{}, i int) interface{} { + switch v := v.(*Organization); i { + case 0: + return &v.state + case 1: + return &v.sizeCache + case 2: + return &v.unknownFields + default: + return nil + } + } + file_stability_api_platform_dashboard_v1_dashboard_proto_msgTypes[5].Exporter = func(v interface{}, i int) interface{} { + switch v := v.(*APIKey); i { + case 0: + return &v.state + case 1: + return &v.sizeCache + case 2: + return &v.unknownFields + default: + return nil + } + } + file_stability_api_platform_dashboard_v1_dashboard_proto_msgTypes[6].Exporter = func(v interface{}, i int) interface{} { + switch v := v.(*User); i { + case 0: + return &v.state + case 1: + return &v.sizeCache + case 2: + return &v.unknownFields + default: + return nil + } + } + file_stability_api_platform_dashboard_v1_dashboard_proto_msgTypes[7].Exporter = func(v interface{}, i int) interface{} { + switch v := v.(*CostData); i { + case 0: + return &v.state + case 1: + return &v.sizeCache + case 2: + return &v.unknownFields + default: + return nil + } + } + file_stability_api_platform_dashboard_v1_dashboard_proto_msgTypes[8].Exporter = func(v interface{}, i int) interface{} { + switch v := v.(*UsageMetric); i { + case 0: + return &v.state + case 1: + return &v.sizeCache + case 2: + return &v.unknownFields + default: + return nil + } + } + file_stability_api_platform_dashboard_v1_dashboard_proto_msgTypes[9].Exporter = func(v interface{}, i int) interface{} { + switch v := v.(*CostTotal); i { + case 0: + return &v.state + case 1: + return &v.sizeCache + case 2: + return &v.unknownFields + default: + return nil + } + } + file_stability_api_platform_dashboard_v1_dashboard_proto_msgTypes[10].Exporter = func(v interface{}, i int) interface{} { + switch v := v.(*TotalMetricsData); i { + case 0: + return &v.state + case 1: + return &v.sizeCache + case 2: + return &v.unknownFields + default: + return nil + } + } + file_stability_api_platform_dashboard_v1_dashboard_proto_msgTypes[11].Exporter = func(v interface{}, i int) interface{} { + switch v := v.(*Metrics); i { + case 0: + return &v.state + case 1: + return &v.sizeCache + case 2: + return &v.unknownFields + default: + return nil + } + } + file_stability_api_platform_dashboard_v1_dashboard_proto_msgTypes[12].Exporter = func(v interface{}, i int) interface{} { + switch v := v.(*EmptyRequest); i { + case 0: + return &v.state + case 1: + return &v.sizeCache + case 2: + return &v.unknownFields + default: + return nil + } + } + file_stability_api_platform_dashboard_v1_dashboard_proto_msgTypes[13].Exporter = func(v interface{}, i int) interface{} { + switch v := v.(*GetOrganizationRequest); i { + case 0: + return &v.state + case 1: + return &v.sizeCache + case 2: + return &v.unknownFields + default: + return nil + } + } + file_stability_api_platform_dashboard_v1_dashboard_proto_msgTypes[14].Exporter = func(v interface{}, i int) interface{} { + switch v := v.(*GetMetricsRequest); i { + case 0: + return &v.state + case 1: + return &v.sizeCache + case 2: + return &v.unknownFields + default: + return nil + } + } + file_stability_api_platform_dashboard_v1_dashboard_proto_msgTypes[15].Exporter = func(v interface{}, i int) interface{} { + switch v := v.(*APIKeyRequest); i { + case 0: + return &v.state + case 1: + return &v.sizeCache + case 2: + return &v.unknownFields + default: + return nil + } + } + file_stability_api_platform_dashboard_v1_dashboard_proto_msgTypes[16].Exporter = func(v interface{}, i int) interface{} { + switch v := v.(*APIKeyFindRequest); i { + case 0: + return &v.state + case 1: + return &v.sizeCache + case 2: + return &v.unknownFields + default: + return nil + } + } + file_stability_api_platform_dashboard_v1_dashboard_proto_msgTypes[17].Exporter = func(v interface{}, i int) interface{} { + switch v := v.(*UpdateDefaultOrganizationRequest); i { + case 0: + return &v.state + case 1: + return &v.sizeCache + case 2: + return &v.unknownFields + default: + return nil + } + } + file_stability_api_platform_dashboard_v1_dashboard_proto_msgTypes[18].Exporter = func(v interface{}, i int) interface{} { + switch v := v.(*ClientSettings); i { + case 0: + return &v.state + case 1: + return &v.sizeCache + case 2: + return &v.unknownFields + default: + return nil + } + } + file_stability_api_platform_dashboard_v1_dashboard_proto_msgTypes[19].Exporter = func(v interface{}, i int) interface{} { + switch v := v.(*CreateAutoChargeIntentRequest); i { + case 0: + return &v.state + case 1: + return &v.sizeCache + case 2: + return &v.unknownFields + default: + return nil + } + } + file_stability_api_platform_dashboard_v1_dashboard_proto_msgTypes[20].Exporter = func(v interface{}, i int) interface{} { + switch v := v.(*CreateChargeRequest); i { + case 0: + return &v.state + case 1: + return &v.sizeCache + case 2: + return &v.unknownFields + default: + return nil + } + } + file_stability_api_platform_dashboard_v1_dashboard_proto_msgTypes[21].Exporter = func(v interface{}, i int) interface{} { + switch v := v.(*GetChargesRequest); i { + case 0: + return &v.state + case 1: + return &v.sizeCache + case 2: + return &v.unknownFields + default: + return nil + } + } + file_stability_api_platform_dashboard_v1_dashboard_proto_msgTypes[22].Exporter = func(v interface{}, i int) interface{} { + switch v := v.(*Charge); i { + case 0: + return &v.state + case 1: + return &v.sizeCache + case 2: + return &v.unknownFields + default: + return nil + } + } + file_stability_api_platform_dashboard_v1_dashboard_proto_msgTypes[23].Exporter = func(v interface{}, i int) interface{} { + switch v := v.(*Charges); i { + case 0: + return &v.state + case 1: + return &v.sizeCache + case 2: + return &v.unknownFields + default: + return nil + } + } + file_stability_api_platform_dashboard_v1_dashboard_proto_msgTypes[24].Exporter = func(v interface{}, i int) interface{} { + switch v := v.(*GetAutoChargeRequest); i { + case 0: + return &v.state + case 1: + return &v.sizeCache + case 2: + return &v.unknownFields + default: + return nil + } + } + file_stability_api_platform_dashboard_v1_dashboard_proto_msgTypes[25].Exporter = func(v interface{}, i int) interface{} { + switch v := v.(*AutoChargeIntent); i { + case 0: + return &v.state + case 1: + return &v.sizeCache + case 2: + return &v.unknownFields + default: + return nil + } + } + file_stability_api_platform_dashboard_v1_dashboard_proto_msgTypes[26].Exporter = func(v interface{}, i int) interface{} { + switch v := v.(*UpdateUserInfoRequest); i { + case 0: + return &v.state + case 1: + return &v.sizeCache + case 2: + return &v.unknownFields + default: + return nil + } + } + file_stability_api_platform_dashboard_v1_dashboard_proto_msgTypes[27].Exporter = func(v interface{}, i int) interface{} { + switch v := v.(*UserPasswordChangeTicket); i { + case 0: + return &v.state + case 1: + return &v.sizeCache + case 2: + return &v.unknownFields + default: + return nil + } + } + } + file_stability_api_platform_dashboard_v1_dashboard_proto_msgTypes[0].OneofWrappers = []interface{}{} + file_stability_api_platform_dashboard_v1_dashboard_proto_msgTypes[4].OneofWrappers = []interface{}{} + file_stability_api_platform_dashboard_v1_dashboard_proto_msgTypes[6].OneofWrappers = []interface{}{} + file_stability_api_platform_dashboard_v1_dashboard_proto_msgTypes[8].OneofWrappers = []interface{}{} + file_stability_api_platform_dashboard_v1_dashboard_proto_msgTypes[14].OneofWrappers = []interface{}{} + file_stability_api_platform_dashboard_v1_dashboard_proto_msgTypes[26].OneofWrappers = []interface{}{} + type x struct{} + out := protoimpl.TypeBuilder{ + File: protoimpl.DescBuilder{ + GoPackagePath: reflect.TypeOf(x{}).PkgPath(), + RawDescriptor: file_stability_api_platform_dashboard_v1_dashboard_proto_rawDesc, + NumEnums: 1, + NumMessages: 28, + NumExtensions: 0, + NumServices: 1, + }, + GoTypes: file_stability_api_platform_dashboard_v1_dashboard_proto_goTypes, + DependencyIndexes: file_stability_api_platform_dashboard_v1_dashboard_proto_depIdxs, + EnumInfos: file_stability_api_platform_dashboard_v1_dashboard_proto_enumTypes, + MessageInfos: file_stability_api_platform_dashboard_v1_dashboard_proto_msgTypes, + }.Build() + File_stability_api_platform_dashboard_v1_dashboard_proto = out.File + file_stability_api_platform_dashboard_v1_dashboard_proto_rawDesc = nil + file_stability_api_platform_dashboard_v1_dashboard_proto_goTypes = nil + file_stability_api_platform_dashboard_v1_dashboard_proto_depIdxs = nil +} diff --git a/src/stability_api/platform/dashboard/v1/dashboard_connect.d.ts b/src/stability_api/platform/dashboard/v1/dashboard_connect.d.ts new file mode 100644 index 0000000..b4cde11 --- /dev/null +++ b/src/stability_api/platform/dashboard/v1/dashboard_connect.d.ts @@ -0,0 +1,169 @@ +// @generated by protoc-gen-connect-es v0.12.0 +// @generated from file stability_api/platform/dashboard/v1/dashboard.proto (package stabilityai.api.dashboard.v1, syntax proto3) +/* eslint-disable */ +// @ts-nocheck + +import { APIKey, APIKeyFindRequest, APIKeyRequest, AutoChargeIntent, Charge, Charges, ClientSettings, CreateAutoChargeIntentRequest, CreateChargeRequest, EmptyRequest, GetAutoChargeRequest, GetChargesRequest, GetMetricsRequest, GetOrganizationRequest, Metrics, Organization, UpdateDefaultOrganizationRequest, UpdateUserInfoRequest, User, UserPasswordChangeTicket } from "./dashboard_pb.js"; +import { MethodKind } from "@bufbuild/protobuf"; + +/** + * @generated from service stabilityai.api.dashboard.v1.DashboardService + */ +export declare const DashboardService: { + readonly typeName: "stabilityai.api.dashboard.v1.DashboardService", + readonly methods: { + /** + * Get info + * + * @generated from rpc stabilityai.api.dashboard.v1.DashboardService.GetMe + */ + readonly getMe: { + readonly name: "GetMe", + readonly I: typeof EmptyRequest, + readonly O: typeof User, + readonly kind: MethodKind.Unary, + }, + /** + * @generated from rpc stabilityai.api.dashboard.v1.DashboardService.GetOrganization + */ + readonly getOrganization: { + readonly name: "GetOrganization", + readonly I: typeof GetOrganizationRequest, + readonly O: typeof Organization, + readonly kind: MethodKind.Unary, + }, + /** + * @generated from rpc stabilityai.api.dashboard.v1.DashboardService.GetMetrics + */ + readonly getMetrics: { + readonly name: "GetMetrics", + readonly I: typeof GetMetricsRequest, + readonly O: typeof Metrics, + readonly kind: MethodKind.Unary, + }, + /** + * API key management + * + * @generated from rpc stabilityai.api.dashboard.v1.DashboardService.CreateAPIKey + */ + readonly createAPIKey: { + readonly name: "CreateAPIKey", + readonly I: typeof APIKeyRequest, + readonly O: typeof APIKey, + readonly kind: MethodKind.Unary, + }, + /** + * @generated from rpc stabilityai.api.dashboard.v1.DashboardService.DeleteAPIKey + */ + readonly deleteAPIKey: { + readonly name: "DeleteAPIKey", + readonly I: typeof APIKeyFindRequest, + readonly O: typeof APIKey, + readonly kind: MethodKind.Unary, + }, + /** + * User settings + * + * @generated from rpc stabilityai.api.dashboard.v1.DashboardService.UpdateDefaultOrganization + */ + readonly updateDefaultOrganization: { + readonly name: "UpdateDefaultOrganization", + readonly I: typeof UpdateDefaultOrganizationRequest, + readonly O: typeof User, + readonly kind: MethodKind.Unary, + }, + /** + * @generated from rpc stabilityai.api.dashboard.v1.DashboardService.GetClientSettings + */ + readonly getClientSettings: { + readonly name: "GetClientSettings", + readonly I: typeof EmptyRequest, + readonly O: typeof ClientSettings, + readonly kind: MethodKind.Unary, + }, + /** + * @generated from rpc stabilityai.api.dashboard.v1.DashboardService.SetClientSettings + */ + readonly setClientSettings: { + readonly name: "SetClientSettings", + readonly I: typeof ClientSettings, + readonly O: typeof ClientSettings, + readonly kind: MethodKind.Unary, + }, + /** + * @generated from rpc stabilityai.api.dashboard.v1.DashboardService.UpdateUserInfo + */ + readonly updateUserInfo: { + readonly name: "UpdateUserInfo", + readonly I: typeof UpdateUserInfoRequest, + readonly O: typeof User, + readonly kind: MethodKind.Unary, + }, + /** + * @generated from rpc stabilityai.api.dashboard.v1.DashboardService.CreatePasswordChangeTicket + */ + readonly createPasswordChangeTicket: { + readonly name: "CreatePasswordChangeTicket", + readonly I: typeof EmptyRequest, + readonly O: typeof UserPasswordChangeTicket, + readonly kind: MethodKind.Unary, + }, + /** + * @generated from rpc stabilityai.api.dashboard.v1.DashboardService.DeleteAccount + */ + readonly deleteAccount: { + readonly name: "DeleteAccount", + readonly I: typeof EmptyRequest, + readonly O: typeof User, + readonly kind: MethodKind.Unary, + }, + /** + * Payment functions + * + * @generated from rpc stabilityai.api.dashboard.v1.DashboardService.CreateCharge + */ + readonly createCharge: { + readonly name: "CreateCharge", + readonly I: typeof CreateChargeRequest, + readonly O: typeof Charge, + readonly kind: MethodKind.Unary, + }, + /** + * @generated from rpc stabilityai.api.dashboard.v1.DashboardService.GetCharges + */ + readonly getCharges: { + readonly name: "GetCharges", + readonly I: typeof GetChargesRequest, + readonly O: typeof Charges, + readonly kind: MethodKind.Unary, + }, + /** + * @generated from rpc stabilityai.api.dashboard.v1.DashboardService.CreateAutoChargeIntent + */ + readonly createAutoChargeIntent: { + readonly name: "CreateAutoChargeIntent", + readonly I: typeof CreateAutoChargeIntentRequest, + readonly O: typeof AutoChargeIntent, + readonly kind: MethodKind.Unary, + }, + /** + * @generated from rpc stabilityai.api.dashboard.v1.DashboardService.UpdateAutoChargeIntent + */ + readonly updateAutoChargeIntent: { + readonly name: "UpdateAutoChargeIntent", + readonly I: typeof CreateAutoChargeIntentRequest, + readonly O: typeof AutoChargeIntent, + readonly kind: MethodKind.Unary, + }, + /** + * @generated from rpc stabilityai.api.dashboard.v1.DashboardService.GetAutoChargeIntent + */ + readonly getAutoChargeIntent: { + readonly name: "GetAutoChargeIntent", + readonly I: typeof GetAutoChargeRequest, + readonly O: typeof AutoChargeIntent, + readonly kind: MethodKind.Unary, + }, + } +}; + diff --git a/src/stability_api/platform/dashboard/v1/dashboard_connect.js b/src/stability_api/platform/dashboard/v1/dashboard_connect.js new file mode 100644 index 0000000..38b4260 --- /dev/null +++ b/src/stability_api/platform/dashboard/v1/dashboard_connect.js @@ -0,0 +1,169 @@ +// @generated by protoc-gen-connect-es v0.12.0 +// @generated from file stability_api/platform/dashboard/v1/dashboard.proto (package stabilityai.api.dashboard.v1, syntax proto3) +/* eslint-disable */ +// @ts-nocheck + +import { APIKey, APIKeyFindRequest, APIKeyRequest, AutoChargeIntent, Charge, Charges, ClientSettings, CreateAutoChargeIntentRequest, CreateChargeRequest, EmptyRequest, GetAutoChargeRequest, GetChargesRequest, GetMetricsRequest, GetOrganizationRequest, Metrics, Organization, UpdateDefaultOrganizationRequest, UpdateUserInfoRequest, User, UserPasswordChangeTicket } from "./dashboard_pb.js"; +import { MethodKind } from "@bufbuild/protobuf"; + +/** + * @generated from service stabilityai.api.dashboard.v1.DashboardService + */ +export const DashboardService = { + typeName: "stabilityai.api.dashboard.v1.DashboardService", + methods: { + /** + * Get info + * + * @generated from rpc stabilityai.api.dashboard.v1.DashboardService.GetMe + */ + getMe: { + name: "GetMe", + I: EmptyRequest, + O: User, + kind: MethodKind.Unary, + }, + /** + * @generated from rpc stabilityai.api.dashboard.v1.DashboardService.GetOrganization + */ + getOrganization: { + name: "GetOrganization", + I: GetOrganizationRequest, + O: Organization, + kind: MethodKind.Unary, + }, + /** + * @generated from rpc stabilityai.api.dashboard.v1.DashboardService.GetMetrics + */ + getMetrics: { + name: "GetMetrics", + I: GetMetricsRequest, + O: Metrics, + kind: MethodKind.Unary, + }, + /** + * API key management + * + * @generated from rpc stabilityai.api.dashboard.v1.DashboardService.CreateAPIKey + */ + createAPIKey: { + name: "CreateAPIKey", + I: APIKeyRequest, + O: APIKey, + kind: MethodKind.Unary, + }, + /** + * @generated from rpc stabilityai.api.dashboard.v1.DashboardService.DeleteAPIKey + */ + deleteAPIKey: { + name: "DeleteAPIKey", + I: APIKeyFindRequest, + O: APIKey, + kind: MethodKind.Unary, + }, + /** + * User settings + * + * @generated from rpc stabilityai.api.dashboard.v1.DashboardService.UpdateDefaultOrganization + */ + updateDefaultOrganization: { + name: "UpdateDefaultOrganization", + I: UpdateDefaultOrganizationRequest, + O: User, + kind: MethodKind.Unary, + }, + /** + * @generated from rpc stabilityai.api.dashboard.v1.DashboardService.GetClientSettings + */ + getClientSettings: { + name: "GetClientSettings", + I: EmptyRequest, + O: ClientSettings, + kind: MethodKind.Unary, + }, + /** + * @generated from rpc stabilityai.api.dashboard.v1.DashboardService.SetClientSettings + */ + setClientSettings: { + name: "SetClientSettings", + I: ClientSettings, + O: ClientSettings, + kind: MethodKind.Unary, + }, + /** + * @generated from rpc stabilityai.api.dashboard.v1.DashboardService.UpdateUserInfo + */ + updateUserInfo: { + name: "UpdateUserInfo", + I: UpdateUserInfoRequest, + O: User, + kind: MethodKind.Unary, + }, + /** + * @generated from rpc stabilityai.api.dashboard.v1.DashboardService.CreatePasswordChangeTicket + */ + createPasswordChangeTicket: { + name: "CreatePasswordChangeTicket", + I: EmptyRequest, + O: UserPasswordChangeTicket, + kind: MethodKind.Unary, + }, + /** + * @generated from rpc stabilityai.api.dashboard.v1.DashboardService.DeleteAccount + */ + deleteAccount: { + name: "DeleteAccount", + I: EmptyRequest, + O: User, + kind: MethodKind.Unary, + }, + /** + * Payment functions + * + * @generated from rpc stabilityai.api.dashboard.v1.DashboardService.CreateCharge + */ + createCharge: { + name: "CreateCharge", + I: CreateChargeRequest, + O: Charge, + kind: MethodKind.Unary, + }, + /** + * @generated from rpc stabilityai.api.dashboard.v1.DashboardService.GetCharges + */ + getCharges: { + name: "GetCharges", + I: GetChargesRequest, + O: Charges, + kind: MethodKind.Unary, + }, + /** + * @generated from rpc stabilityai.api.dashboard.v1.DashboardService.CreateAutoChargeIntent + */ + createAutoChargeIntent: { + name: "CreateAutoChargeIntent", + I: CreateAutoChargeIntentRequest, + O: AutoChargeIntent, + kind: MethodKind.Unary, + }, + /** + * @generated from rpc stabilityai.api.dashboard.v1.DashboardService.UpdateAutoChargeIntent + */ + updateAutoChargeIntent: { + name: "UpdateAutoChargeIntent", + I: CreateAutoChargeIntentRequest, + O: AutoChargeIntent, + kind: MethodKind.Unary, + }, + /** + * @generated from rpc stabilityai.api.dashboard.v1.DashboardService.GetAutoChargeIntent + */ + getAutoChargeIntent: { + name: "GetAutoChargeIntent", + I: GetAutoChargeRequest, + O: AutoChargeIntent, + kind: MethodKind.Unary, + }, + } +}; + diff --git a/src/stability_api/platform/dashboard/v1/dashboard_grpc.pb.go b/src/stability_api/platform/dashboard/v1/dashboard_grpc.pb.go new file mode 100644 index 0000000..c9485ea --- /dev/null +++ b/src/stability_api/platform/dashboard/v1/dashboard_grpc.pb.go @@ -0,0 +1,672 @@ +// Code generated by protoc-gen-go-grpc. DO NOT EDIT. +// versions: +// - protoc-gen-go-grpc v1.3.0 +// - protoc (unknown) +// source: stability_api/platform/dashboard/v1/dashboard.proto + +package dashboardv1 + +import ( + context "context" + grpc "google.golang.org/grpc" + codes "google.golang.org/grpc/codes" + status "google.golang.org/grpc/status" +) + +// This is a compile-time assertion to ensure that this generated file +// is compatible with the grpc package it is being compiled against. +// Requires gRPC-Go v1.32.0 or later. +const _ = grpc.SupportPackageIsVersion7 + +const ( + DashboardService_GetMe_FullMethodName = "/stabilityai.api.dashboard.v1.DashboardService/GetMe" + DashboardService_GetOrganization_FullMethodName = "/stabilityai.api.dashboard.v1.DashboardService/GetOrganization" + DashboardService_GetMetrics_FullMethodName = "/stabilityai.api.dashboard.v1.DashboardService/GetMetrics" + DashboardService_CreateAPIKey_FullMethodName = "/stabilityai.api.dashboard.v1.DashboardService/CreateAPIKey" + DashboardService_DeleteAPIKey_FullMethodName = "/stabilityai.api.dashboard.v1.DashboardService/DeleteAPIKey" + DashboardService_UpdateDefaultOrganization_FullMethodName = "/stabilityai.api.dashboard.v1.DashboardService/UpdateDefaultOrganization" + DashboardService_GetClientSettings_FullMethodName = "/stabilityai.api.dashboard.v1.DashboardService/GetClientSettings" + DashboardService_SetClientSettings_FullMethodName = "/stabilityai.api.dashboard.v1.DashboardService/SetClientSettings" + DashboardService_UpdateUserInfo_FullMethodName = "/stabilityai.api.dashboard.v1.DashboardService/UpdateUserInfo" + DashboardService_CreatePasswordChangeTicket_FullMethodName = "/stabilityai.api.dashboard.v1.DashboardService/CreatePasswordChangeTicket" + DashboardService_DeleteAccount_FullMethodName = "/stabilityai.api.dashboard.v1.DashboardService/DeleteAccount" + DashboardService_CreateCharge_FullMethodName = "/stabilityai.api.dashboard.v1.DashboardService/CreateCharge" + DashboardService_GetCharges_FullMethodName = "/stabilityai.api.dashboard.v1.DashboardService/GetCharges" + DashboardService_CreateAutoChargeIntent_FullMethodName = "/stabilityai.api.dashboard.v1.DashboardService/CreateAutoChargeIntent" + DashboardService_UpdateAutoChargeIntent_FullMethodName = "/stabilityai.api.dashboard.v1.DashboardService/UpdateAutoChargeIntent" + DashboardService_GetAutoChargeIntent_FullMethodName = "/stabilityai.api.dashboard.v1.DashboardService/GetAutoChargeIntent" +) + +// DashboardServiceClient is the client API for DashboardService service. +// +// For semantics around ctx use and closing/ending streaming RPCs, please refer to https://pkg.go.dev/google.golang.org/grpc/?tab=doc#ClientConn.NewStream. +type DashboardServiceClient interface { + // Get info + GetMe(ctx context.Context, in *EmptyRequest, opts ...grpc.CallOption) (*User, error) + GetOrganization(ctx context.Context, in *GetOrganizationRequest, opts ...grpc.CallOption) (*Organization, error) + GetMetrics(ctx context.Context, in *GetMetricsRequest, opts ...grpc.CallOption) (*Metrics, error) + // API key management + CreateAPIKey(ctx context.Context, in *APIKeyRequest, opts ...grpc.CallOption) (*APIKey, error) + DeleteAPIKey(ctx context.Context, in *APIKeyFindRequest, opts ...grpc.CallOption) (*APIKey, error) + // User settings + UpdateDefaultOrganization(ctx context.Context, in *UpdateDefaultOrganizationRequest, opts ...grpc.CallOption) (*User, error) + GetClientSettings(ctx context.Context, in *EmptyRequest, opts ...grpc.CallOption) (*ClientSettings, error) + SetClientSettings(ctx context.Context, in *ClientSettings, opts ...grpc.CallOption) (*ClientSettings, error) + UpdateUserInfo(ctx context.Context, in *UpdateUserInfoRequest, opts ...grpc.CallOption) (*User, error) + CreatePasswordChangeTicket(ctx context.Context, in *EmptyRequest, opts ...grpc.CallOption) (*UserPasswordChangeTicket, error) + DeleteAccount(ctx context.Context, in *EmptyRequest, opts ...grpc.CallOption) (*User, error) + // Payment functions + CreateCharge(ctx context.Context, in *CreateChargeRequest, opts ...grpc.CallOption) (*Charge, error) + GetCharges(ctx context.Context, in *GetChargesRequest, opts ...grpc.CallOption) (*Charges, error) + CreateAutoChargeIntent(ctx context.Context, in *CreateAutoChargeIntentRequest, opts ...grpc.CallOption) (*AutoChargeIntent, error) + UpdateAutoChargeIntent(ctx context.Context, in *CreateAutoChargeIntentRequest, opts ...grpc.CallOption) (*AutoChargeIntent, error) + GetAutoChargeIntent(ctx context.Context, in *GetAutoChargeRequest, opts ...grpc.CallOption) (*AutoChargeIntent, error) +} + +type dashboardServiceClient struct { + cc grpc.ClientConnInterface +} + +func NewDashboardServiceClient(cc grpc.ClientConnInterface) DashboardServiceClient { + return &dashboardServiceClient{cc} +} + +func (c *dashboardServiceClient) GetMe(ctx context.Context, in *EmptyRequest, opts ...grpc.CallOption) (*User, error) { + out := new(User) + err := c.cc.Invoke(ctx, DashboardService_GetMe_FullMethodName, in, out, opts...) + if err != nil { + return nil, err + } + return out, nil +} + +func (c *dashboardServiceClient) GetOrganization(ctx context.Context, in *GetOrganizationRequest, opts ...grpc.CallOption) (*Organization, error) { + out := new(Organization) + err := c.cc.Invoke(ctx, DashboardService_GetOrganization_FullMethodName, in, out, opts...) + if err != nil { + return nil, err + } + return out, nil +} + +func (c *dashboardServiceClient) GetMetrics(ctx context.Context, in *GetMetricsRequest, opts ...grpc.CallOption) (*Metrics, error) { + out := new(Metrics) + err := c.cc.Invoke(ctx, DashboardService_GetMetrics_FullMethodName, in, out, opts...) + if err != nil { + return nil, err + } + return out, nil +} + +func (c *dashboardServiceClient) CreateAPIKey(ctx context.Context, in *APIKeyRequest, opts ...grpc.CallOption) (*APIKey, error) { + out := new(APIKey) + err := c.cc.Invoke(ctx, DashboardService_CreateAPIKey_FullMethodName, in, out, opts...) + if err != nil { + return nil, err + } + return out, nil +} + +func (c *dashboardServiceClient) DeleteAPIKey(ctx context.Context, in *APIKeyFindRequest, opts ...grpc.CallOption) (*APIKey, error) { + out := new(APIKey) + err := c.cc.Invoke(ctx, DashboardService_DeleteAPIKey_FullMethodName, in, out, opts...) + if err != nil { + return nil, err + } + return out, nil +} + +func (c *dashboardServiceClient) UpdateDefaultOrganization(ctx context.Context, in *UpdateDefaultOrganizationRequest, opts ...grpc.CallOption) (*User, error) { + out := new(User) + err := c.cc.Invoke(ctx, DashboardService_UpdateDefaultOrganization_FullMethodName, in, out, opts...) + if err != nil { + return nil, err + } + return out, nil +} + +func (c *dashboardServiceClient) GetClientSettings(ctx context.Context, in *EmptyRequest, opts ...grpc.CallOption) (*ClientSettings, error) { + out := new(ClientSettings) + err := c.cc.Invoke(ctx, DashboardService_GetClientSettings_FullMethodName, in, out, opts...) + if err != nil { + return nil, err + } + return out, nil +} + +func (c *dashboardServiceClient) SetClientSettings(ctx context.Context, in *ClientSettings, opts ...grpc.CallOption) (*ClientSettings, error) { + out := new(ClientSettings) + err := c.cc.Invoke(ctx, DashboardService_SetClientSettings_FullMethodName, in, out, opts...) + if err != nil { + return nil, err + } + return out, nil +} + +func (c *dashboardServiceClient) UpdateUserInfo(ctx context.Context, in *UpdateUserInfoRequest, opts ...grpc.CallOption) (*User, error) { + out := new(User) + err := c.cc.Invoke(ctx, DashboardService_UpdateUserInfo_FullMethodName, in, out, opts...) + if err != nil { + return nil, err + } + return out, nil +} + +func (c *dashboardServiceClient) CreatePasswordChangeTicket(ctx context.Context, in *EmptyRequest, opts ...grpc.CallOption) (*UserPasswordChangeTicket, error) { + out := new(UserPasswordChangeTicket) + err := c.cc.Invoke(ctx, DashboardService_CreatePasswordChangeTicket_FullMethodName, in, out, opts...) + if err != nil { + return nil, err + } + return out, nil +} + +func (c *dashboardServiceClient) DeleteAccount(ctx context.Context, in *EmptyRequest, opts ...grpc.CallOption) (*User, error) { + out := new(User) + err := c.cc.Invoke(ctx, DashboardService_DeleteAccount_FullMethodName, in, out, opts...) + if err != nil { + return nil, err + } + return out, nil +} + +func (c *dashboardServiceClient) CreateCharge(ctx context.Context, in *CreateChargeRequest, opts ...grpc.CallOption) (*Charge, error) { + out := new(Charge) + err := c.cc.Invoke(ctx, DashboardService_CreateCharge_FullMethodName, in, out, opts...) + if err != nil { + return nil, err + } + return out, nil +} + +func (c *dashboardServiceClient) GetCharges(ctx context.Context, in *GetChargesRequest, opts ...grpc.CallOption) (*Charges, error) { + out := new(Charges) + err := c.cc.Invoke(ctx, DashboardService_GetCharges_FullMethodName, in, out, opts...) + if err != nil { + return nil, err + } + return out, nil +} + +func (c *dashboardServiceClient) CreateAutoChargeIntent(ctx context.Context, in *CreateAutoChargeIntentRequest, opts ...grpc.CallOption) (*AutoChargeIntent, error) { + out := new(AutoChargeIntent) + err := c.cc.Invoke(ctx, DashboardService_CreateAutoChargeIntent_FullMethodName, in, out, opts...) + if err != nil { + return nil, err + } + return out, nil +} + +func (c *dashboardServiceClient) UpdateAutoChargeIntent(ctx context.Context, in *CreateAutoChargeIntentRequest, opts ...grpc.CallOption) (*AutoChargeIntent, error) { + out := new(AutoChargeIntent) + err := c.cc.Invoke(ctx, DashboardService_UpdateAutoChargeIntent_FullMethodName, in, out, opts...) + if err != nil { + return nil, err + } + return out, nil +} + +func (c *dashboardServiceClient) GetAutoChargeIntent(ctx context.Context, in *GetAutoChargeRequest, opts ...grpc.CallOption) (*AutoChargeIntent, error) { + out := new(AutoChargeIntent) + err := c.cc.Invoke(ctx, DashboardService_GetAutoChargeIntent_FullMethodName, in, out, opts...) + if err != nil { + return nil, err + } + return out, nil +} + +// DashboardServiceServer is the server API for DashboardService service. +// All implementations must embed UnimplementedDashboardServiceServer +// for forward compatibility +type DashboardServiceServer interface { + // Get info + GetMe(context.Context, *EmptyRequest) (*User, error) + GetOrganization(context.Context, *GetOrganizationRequest) (*Organization, error) + GetMetrics(context.Context, *GetMetricsRequest) (*Metrics, error) + // API key management + CreateAPIKey(context.Context, *APIKeyRequest) (*APIKey, error) + DeleteAPIKey(context.Context, *APIKeyFindRequest) (*APIKey, error) + // User settings + UpdateDefaultOrganization(context.Context, *UpdateDefaultOrganizationRequest) (*User, error) + GetClientSettings(context.Context, *EmptyRequest) (*ClientSettings, error) + SetClientSettings(context.Context, *ClientSettings) (*ClientSettings, error) + UpdateUserInfo(context.Context, *UpdateUserInfoRequest) (*User, error) + CreatePasswordChangeTicket(context.Context, *EmptyRequest) (*UserPasswordChangeTicket, error) + DeleteAccount(context.Context, *EmptyRequest) (*User, error) + // Payment functions + CreateCharge(context.Context, *CreateChargeRequest) (*Charge, error) + GetCharges(context.Context, *GetChargesRequest) (*Charges, error) + CreateAutoChargeIntent(context.Context, *CreateAutoChargeIntentRequest) (*AutoChargeIntent, error) + UpdateAutoChargeIntent(context.Context, *CreateAutoChargeIntentRequest) (*AutoChargeIntent, error) + GetAutoChargeIntent(context.Context, *GetAutoChargeRequest) (*AutoChargeIntent, error) + mustEmbedUnimplementedDashboardServiceServer() +} + +// UnimplementedDashboardServiceServer must be embedded to have forward compatible implementations. +type UnimplementedDashboardServiceServer struct { +} + +func (UnimplementedDashboardServiceServer) GetMe(context.Context, *EmptyRequest) (*User, error) { + return nil, status.Errorf(codes.Unimplemented, "method GetMe not implemented") +} +func (UnimplementedDashboardServiceServer) GetOrganization(context.Context, *GetOrganizationRequest) (*Organization, error) { + return nil, status.Errorf(codes.Unimplemented, "method GetOrganization not implemented") +} +func (UnimplementedDashboardServiceServer) GetMetrics(context.Context, *GetMetricsRequest) (*Metrics, error) { + return nil, status.Errorf(codes.Unimplemented, "method GetMetrics not implemented") +} +func (UnimplementedDashboardServiceServer) CreateAPIKey(context.Context, *APIKeyRequest) (*APIKey, error) { + return nil, status.Errorf(codes.Unimplemented, "method CreateAPIKey not implemented") +} +func (UnimplementedDashboardServiceServer) DeleteAPIKey(context.Context, *APIKeyFindRequest) (*APIKey, error) { + return nil, status.Errorf(codes.Unimplemented, "method DeleteAPIKey not implemented") +} +func (UnimplementedDashboardServiceServer) UpdateDefaultOrganization(context.Context, *UpdateDefaultOrganizationRequest) (*User, error) { + return nil, status.Errorf(codes.Unimplemented, "method UpdateDefaultOrganization not implemented") +} +func (UnimplementedDashboardServiceServer) GetClientSettings(context.Context, *EmptyRequest) (*ClientSettings, error) { + return nil, status.Errorf(codes.Unimplemented, "method GetClientSettings not implemented") +} +func (UnimplementedDashboardServiceServer) SetClientSettings(context.Context, *ClientSettings) (*ClientSettings, error) { + return nil, status.Errorf(codes.Unimplemented, "method SetClientSettings not implemented") +} +func (UnimplementedDashboardServiceServer) UpdateUserInfo(context.Context, *UpdateUserInfoRequest) (*User, error) { + return nil, status.Errorf(codes.Unimplemented, "method UpdateUserInfo not implemented") +} +func (UnimplementedDashboardServiceServer) CreatePasswordChangeTicket(context.Context, *EmptyRequest) (*UserPasswordChangeTicket, error) { + return nil, status.Errorf(codes.Unimplemented, "method CreatePasswordChangeTicket not implemented") +} +func (UnimplementedDashboardServiceServer) DeleteAccount(context.Context, *EmptyRequest) (*User, error) { + return nil, status.Errorf(codes.Unimplemented, "method DeleteAccount not implemented") +} +func (UnimplementedDashboardServiceServer) CreateCharge(context.Context, *CreateChargeRequest) (*Charge, error) { + return nil, status.Errorf(codes.Unimplemented, "method CreateCharge not implemented") +} +func (UnimplementedDashboardServiceServer) GetCharges(context.Context, *GetChargesRequest) (*Charges, error) { + return nil, status.Errorf(codes.Unimplemented, "method GetCharges not implemented") +} +func (UnimplementedDashboardServiceServer) CreateAutoChargeIntent(context.Context, *CreateAutoChargeIntentRequest) (*AutoChargeIntent, error) { + return nil, status.Errorf(codes.Unimplemented, "method CreateAutoChargeIntent not implemented") +} +func (UnimplementedDashboardServiceServer) UpdateAutoChargeIntent(context.Context, *CreateAutoChargeIntentRequest) (*AutoChargeIntent, error) { + return nil, status.Errorf(codes.Unimplemented, "method UpdateAutoChargeIntent not implemented") +} +func (UnimplementedDashboardServiceServer) GetAutoChargeIntent(context.Context, *GetAutoChargeRequest) (*AutoChargeIntent, error) { + return nil, status.Errorf(codes.Unimplemented, "method GetAutoChargeIntent not implemented") +} +func (UnimplementedDashboardServiceServer) mustEmbedUnimplementedDashboardServiceServer() {} + +// UnsafeDashboardServiceServer may be embedded to opt out of forward compatibility for this service. +// Use of this interface is not recommended, as added methods to DashboardServiceServer will +// result in compilation errors. +type UnsafeDashboardServiceServer interface { + mustEmbedUnimplementedDashboardServiceServer() +} + +func RegisterDashboardServiceServer(s grpc.ServiceRegistrar, srv DashboardServiceServer) { + s.RegisterService(&DashboardService_ServiceDesc, srv) +} + +func _DashboardService_GetMe_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) { + in := new(EmptyRequest) + if err := dec(in); err != nil { + return nil, err + } + if interceptor == nil { + return srv.(DashboardServiceServer).GetMe(ctx, in) + } + info := &grpc.UnaryServerInfo{ + Server: srv, + FullMethod: DashboardService_GetMe_FullMethodName, + } + handler := func(ctx context.Context, req interface{}) (interface{}, error) { + return srv.(DashboardServiceServer).GetMe(ctx, req.(*EmptyRequest)) + } + return interceptor(ctx, in, info, handler) +} + +func _DashboardService_GetOrganization_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) { + in := new(GetOrganizationRequest) + if err := dec(in); err != nil { + return nil, err + } + if interceptor == nil { + return srv.(DashboardServiceServer).GetOrganization(ctx, in) + } + info := &grpc.UnaryServerInfo{ + Server: srv, + FullMethod: DashboardService_GetOrganization_FullMethodName, + } + handler := func(ctx context.Context, req interface{}) (interface{}, error) { + return srv.(DashboardServiceServer).GetOrganization(ctx, req.(*GetOrganizationRequest)) + } + return interceptor(ctx, in, info, handler) +} + +func _DashboardService_GetMetrics_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) { + in := new(GetMetricsRequest) + if err := dec(in); err != nil { + return nil, err + } + if interceptor == nil { + return srv.(DashboardServiceServer).GetMetrics(ctx, in) + } + info := &grpc.UnaryServerInfo{ + Server: srv, + FullMethod: DashboardService_GetMetrics_FullMethodName, + } + handler := func(ctx context.Context, req interface{}) (interface{}, error) { + return srv.(DashboardServiceServer).GetMetrics(ctx, req.(*GetMetricsRequest)) + } + return interceptor(ctx, in, info, handler) +} + +func _DashboardService_CreateAPIKey_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) { + in := new(APIKeyRequest) + if err := dec(in); err != nil { + return nil, err + } + if interceptor == nil { + return srv.(DashboardServiceServer).CreateAPIKey(ctx, in) + } + info := &grpc.UnaryServerInfo{ + Server: srv, + FullMethod: DashboardService_CreateAPIKey_FullMethodName, + } + handler := func(ctx context.Context, req interface{}) (interface{}, error) { + return srv.(DashboardServiceServer).CreateAPIKey(ctx, req.(*APIKeyRequest)) + } + return interceptor(ctx, in, info, handler) +} + +func _DashboardService_DeleteAPIKey_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) { + in := new(APIKeyFindRequest) + if err := dec(in); err != nil { + return nil, err + } + if interceptor == nil { + return srv.(DashboardServiceServer).DeleteAPIKey(ctx, in) + } + info := &grpc.UnaryServerInfo{ + Server: srv, + FullMethod: DashboardService_DeleteAPIKey_FullMethodName, + } + handler := func(ctx context.Context, req interface{}) (interface{}, error) { + return srv.(DashboardServiceServer).DeleteAPIKey(ctx, req.(*APIKeyFindRequest)) + } + return interceptor(ctx, in, info, handler) +} + +func _DashboardService_UpdateDefaultOrganization_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) { + in := new(UpdateDefaultOrganizationRequest) + if err := dec(in); err != nil { + return nil, err + } + if interceptor == nil { + return srv.(DashboardServiceServer).UpdateDefaultOrganization(ctx, in) + } + info := &grpc.UnaryServerInfo{ + Server: srv, + FullMethod: DashboardService_UpdateDefaultOrganization_FullMethodName, + } + handler := func(ctx context.Context, req interface{}) (interface{}, error) { + return srv.(DashboardServiceServer).UpdateDefaultOrganization(ctx, req.(*UpdateDefaultOrganizationRequest)) + } + return interceptor(ctx, in, info, handler) +} + +func _DashboardService_GetClientSettings_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) { + in := new(EmptyRequest) + if err := dec(in); err != nil { + return nil, err + } + if interceptor == nil { + return srv.(DashboardServiceServer).GetClientSettings(ctx, in) + } + info := &grpc.UnaryServerInfo{ + Server: srv, + FullMethod: DashboardService_GetClientSettings_FullMethodName, + } + handler := func(ctx context.Context, req interface{}) (interface{}, error) { + return srv.(DashboardServiceServer).GetClientSettings(ctx, req.(*EmptyRequest)) + } + return interceptor(ctx, in, info, handler) +} + +func _DashboardService_SetClientSettings_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) { + in := new(ClientSettings) + if err := dec(in); err != nil { + return nil, err + } + if interceptor == nil { + return srv.(DashboardServiceServer).SetClientSettings(ctx, in) + } + info := &grpc.UnaryServerInfo{ + Server: srv, + FullMethod: DashboardService_SetClientSettings_FullMethodName, + } + handler := func(ctx context.Context, req interface{}) (interface{}, error) { + return srv.(DashboardServiceServer).SetClientSettings(ctx, req.(*ClientSettings)) + } + return interceptor(ctx, in, info, handler) +} + +func _DashboardService_UpdateUserInfo_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) { + in := new(UpdateUserInfoRequest) + if err := dec(in); err != nil { + return nil, err + } + if interceptor == nil { + return srv.(DashboardServiceServer).UpdateUserInfo(ctx, in) + } + info := &grpc.UnaryServerInfo{ + Server: srv, + FullMethod: DashboardService_UpdateUserInfo_FullMethodName, + } + handler := func(ctx context.Context, req interface{}) (interface{}, error) { + return srv.(DashboardServiceServer).UpdateUserInfo(ctx, req.(*UpdateUserInfoRequest)) + } + return interceptor(ctx, in, info, handler) +} + +func _DashboardService_CreatePasswordChangeTicket_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) { + in := new(EmptyRequest) + if err := dec(in); err != nil { + return nil, err + } + if interceptor == nil { + return srv.(DashboardServiceServer).CreatePasswordChangeTicket(ctx, in) + } + info := &grpc.UnaryServerInfo{ + Server: srv, + FullMethod: DashboardService_CreatePasswordChangeTicket_FullMethodName, + } + handler := func(ctx context.Context, req interface{}) (interface{}, error) { + return srv.(DashboardServiceServer).CreatePasswordChangeTicket(ctx, req.(*EmptyRequest)) + } + return interceptor(ctx, in, info, handler) +} + +func _DashboardService_DeleteAccount_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) { + in := new(EmptyRequest) + if err := dec(in); err != nil { + return nil, err + } + if interceptor == nil { + return srv.(DashboardServiceServer).DeleteAccount(ctx, in) + } + info := &grpc.UnaryServerInfo{ + Server: srv, + FullMethod: DashboardService_DeleteAccount_FullMethodName, + } + handler := func(ctx context.Context, req interface{}) (interface{}, error) { + return srv.(DashboardServiceServer).DeleteAccount(ctx, req.(*EmptyRequest)) + } + return interceptor(ctx, in, info, handler) +} + +func _DashboardService_CreateCharge_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) { + in := new(CreateChargeRequest) + if err := dec(in); err != nil { + return nil, err + } + if interceptor == nil { + return srv.(DashboardServiceServer).CreateCharge(ctx, in) + } + info := &grpc.UnaryServerInfo{ + Server: srv, + FullMethod: DashboardService_CreateCharge_FullMethodName, + } + handler := func(ctx context.Context, req interface{}) (interface{}, error) { + return srv.(DashboardServiceServer).CreateCharge(ctx, req.(*CreateChargeRequest)) + } + return interceptor(ctx, in, info, handler) +} + +func _DashboardService_GetCharges_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) { + in := new(GetChargesRequest) + if err := dec(in); err != nil { + return nil, err + } + if interceptor == nil { + return srv.(DashboardServiceServer).GetCharges(ctx, in) + } + info := &grpc.UnaryServerInfo{ + Server: srv, + FullMethod: DashboardService_GetCharges_FullMethodName, + } + handler := func(ctx context.Context, req interface{}) (interface{}, error) { + return srv.(DashboardServiceServer).GetCharges(ctx, req.(*GetChargesRequest)) + } + return interceptor(ctx, in, info, handler) +} + +func _DashboardService_CreateAutoChargeIntent_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) { + in := new(CreateAutoChargeIntentRequest) + if err := dec(in); err != nil { + return nil, err + } + if interceptor == nil { + return srv.(DashboardServiceServer).CreateAutoChargeIntent(ctx, in) + } + info := &grpc.UnaryServerInfo{ + Server: srv, + FullMethod: DashboardService_CreateAutoChargeIntent_FullMethodName, + } + handler := func(ctx context.Context, req interface{}) (interface{}, error) { + return srv.(DashboardServiceServer).CreateAutoChargeIntent(ctx, req.(*CreateAutoChargeIntentRequest)) + } + return interceptor(ctx, in, info, handler) +} + +func _DashboardService_UpdateAutoChargeIntent_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) { + in := new(CreateAutoChargeIntentRequest) + if err := dec(in); err != nil { + return nil, err + } + if interceptor == nil { + return srv.(DashboardServiceServer).UpdateAutoChargeIntent(ctx, in) + } + info := &grpc.UnaryServerInfo{ + Server: srv, + FullMethod: DashboardService_UpdateAutoChargeIntent_FullMethodName, + } + handler := func(ctx context.Context, req interface{}) (interface{}, error) { + return srv.(DashboardServiceServer).UpdateAutoChargeIntent(ctx, req.(*CreateAutoChargeIntentRequest)) + } + return interceptor(ctx, in, info, handler) +} + +func _DashboardService_GetAutoChargeIntent_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) { + in := new(GetAutoChargeRequest) + if err := dec(in); err != nil { + return nil, err + } + if interceptor == nil { + return srv.(DashboardServiceServer).GetAutoChargeIntent(ctx, in) + } + info := &grpc.UnaryServerInfo{ + Server: srv, + FullMethod: DashboardService_GetAutoChargeIntent_FullMethodName, + } + handler := func(ctx context.Context, req interface{}) (interface{}, error) { + return srv.(DashboardServiceServer).GetAutoChargeIntent(ctx, req.(*GetAutoChargeRequest)) + } + return interceptor(ctx, in, info, handler) +} + +// DashboardService_ServiceDesc is the grpc.ServiceDesc for DashboardService service. +// It's only intended for direct use with grpc.RegisterService, +// and not to be introspected or modified (even as a copy) +var DashboardService_ServiceDesc = grpc.ServiceDesc{ + ServiceName: "stabilityai.api.dashboard.v1.DashboardService", + HandlerType: (*DashboardServiceServer)(nil), + Methods: []grpc.MethodDesc{ + { + MethodName: "GetMe", + Handler: _DashboardService_GetMe_Handler, + }, + { + MethodName: "GetOrganization", + Handler: _DashboardService_GetOrganization_Handler, + }, + { + MethodName: "GetMetrics", + Handler: _DashboardService_GetMetrics_Handler, + }, + { + MethodName: "CreateAPIKey", + Handler: _DashboardService_CreateAPIKey_Handler, + }, + { + MethodName: "DeleteAPIKey", + Handler: _DashboardService_DeleteAPIKey_Handler, + }, + { + MethodName: "UpdateDefaultOrganization", + Handler: _DashboardService_UpdateDefaultOrganization_Handler, + }, + { + MethodName: "GetClientSettings", + Handler: _DashboardService_GetClientSettings_Handler, + }, + { + MethodName: "SetClientSettings", + Handler: _DashboardService_SetClientSettings_Handler, + }, + { + MethodName: "UpdateUserInfo", + Handler: _DashboardService_UpdateUserInfo_Handler, + }, + { + MethodName: "CreatePasswordChangeTicket", + Handler: _DashboardService_CreatePasswordChangeTicket_Handler, + }, + { + MethodName: "DeleteAccount", + Handler: _DashboardService_DeleteAccount_Handler, + }, + { + MethodName: "CreateCharge", + Handler: _DashboardService_CreateCharge_Handler, + }, + { + MethodName: "GetCharges", + Handler: _DashboardService_GetCharges_Handler, + }, + { + MethodName: "CreateAutoChargeIntent", + Handler: _DashboardService_CreateAutoChargeIntent_Handler, + }, + { + MethodName: "UpdateAutoChargeIntent", + Handler: _DashboardService_UpdateAutoChargeIntent_Handler, + }, + { + MethodName: "GetAutoChargeIntent", + Handler: _DashboardService_GetAutoChargeIntent_Handler, + }, + }, + Streams: []grpc.StreamDesc{}, + Metadata: "stability_api/platform/dashboard/v1/dashboard.proto", +} diff --git a/src/stability_api/platform/dashboard/v1/dashboard_pb.d.ts b/src/stability_api/platform/dashboard/v1/dashboard_pb.d.ts new file mode 100644 index 0000000..6ffe2a2 --- /dev/null +++ b/src/stability_api/platform/dashboard/v1/dashboard_pb.d.ts @@ -0,0 +1,960 @@ +// @generated by protoc-gen-es v1.3.0 +// @generated from file stability_api/platform/dashboard/v1/dashboard.proto (package stabilityai.api.dashboard.v1, syntax proto3) +/* eslint-disable */ +// @ts-nocheck + +import type { BinaryReadOptions, FieldList, JsonReadOptions, JsonValue, PartialMessage, PlainMessage } from "@bufbuild/protobuf"; +import { Message, proto3 } from "@bufbuild/protobuf"; + +/** + * @generated from enum stabilityai.api.dashboard.v1.OrganizationRole + */ +export declare enum OrganizationRole { + /** + * @generated from enum value: MEMBER = 0; + */ + MEMBER = 0, + + /** + * @generated from enum value: ACCOUNTANT = 1; + */ + ACCOUNTANT = 1, + + /** + * @generated from enum value: OWNER = 2; + */ + OWNER = 2, +} + +/** + * @generated from message stabilityai.api.dashboard.v1.OrganizationMember + */ +export declare class OrganizationMember extends Message { + /** + * @generated from field: stabilityai.api.dashboard.v1.Organization organization = 1; + */ + organization?: Organization; + + /** + * @generated from field: optional stabilityai.api.dashboard.v1.User user = 2; + */ + user?: User; + + /** + * @generated from field: stabilityai.api.dashboard.v1.OrganizationRole role = 3; + */ + role: OrganizationRole; + + /** + * @generated from field: bool is_default = 4; + */ + isDefault: boolean; + + constructor(data?: PartialMessage); + + static readonly runtime: typeof proto3; + static readonly typeName = "stabilityai.api.dashboard.v1.OrganizationMember"; + static readonly fields: FieldList; + + static fromBinary(bytes: Uint8Array, options?: Partial): OrganizationMember; + + static fromJson(jsonValue: JsonValue, options?: Partial): OrganizationMember; + + static fromJsonString(jsonString: string, options?: Partial): OrganizationMember; + + static equals(a: OrganizationMember | PlainMessage | undefined, b: OrganizationMember | PlainMessage | undefined): boolean; +} + +/** + * @generated from message stabilityai.api.dashboard.v1.OrganizationGrant + */ +export declare class OrganizationGrant extends Message { + /** + * @generated from field: double amount_granted = 1; + */ + amountGranted: number; + + /** + * @generated from field: double amount_used = 2; + */ + amountUsed: number; + + /** + * @generated from field: uint64 expires_at = 3; + */ + expiresAt: bigint; + + /** + * @generated from field: uint64 granted_at = 4; + */ + grantedAt: bigint; + + constructor(data?: PartialMessage); + + static readonly runtime: typeof proto3; + static readonly typeName = "stabilityai.api.dashboard.v1.OrganizationGrant"; + static readonly fields: FieldList; + + static fromBinary(bytes: Uint8Array, options?: Partial): OrganizationGrant; + + static fromJson(jsonValue: JsonValue, options?: Partial): OrganizationGrant; + + static fromJsonString(jsonString: string, options?: Partial): OrganizationGrant; + + static equals(a: OrganizationGrant | PlainMessage | undefined, b: OrganizationGrant | PlainMessage | undefined): boolean; +} + +/** + * @generated from message stabilityai.api.dashboard.v1.OrganizationPaymentInfo + */ +export declare class OrganizationPaymentInfo extends Message { + /** + * @generated from field: double balance = 1; + */ + balance: number; + + /** + * @generated from field: repeated stabilityai.api.dashboard.v1.OrganizationGrant grants = 2; + */ + grants: OrganizationGrant[]; + + constructor(data?: PartialMessage); + + static readonly runtime: typeof proto3; + static readonly typeName = "stabilityai.api.dashboard.v1.OrganizationPaymentInfo"; + static readonly fields: FieldList; + + static fromBinary(bytes: Uint8Array, options?: Partial): OrganizationPaymentInfo; + + static fromJson(jsonValue: JsonValue, options?: Partial): OrganizationPaymentInfo; + + static fromJsonString(jsonString: string, options?: Partial): OrganizationPaymentInfo; + + static equals(a: OrganizationPaymentInfo | PlainMessage | undefined, b: OrganizationPaymentInfo | PlainMessage | undefined): boolean; +} + +/** + * @generated from message stabilityai.api.dashboard.v1.OrganizationAutoCharge + */ +export declare class OrganizationAutoCharge extends Message { + /** + * @generated from field: bool enabled = 1; + */ + enabled: boolean; + + /** + * @generated from field: string id = 2; + */ + id: string; + + /** + * @generated from field: uint64 created_at = 3; + */ + createdAt: bigint; + + constructor(data?: PartialMessage); + + static readonly runtime: typeof proto3; + static readonly typeName = "stabilityai.api.dashboard.v1.OrganizationAutoCharge"; + static readonly fields: FieldList; + + static fromBinary(bytes: Uint8Array, options?: Partial): OrganizationAutoCharge; + + static fromJson(jsonValue: JsonValue, options?: Partial): OrganizationAutoCharge; + + static fromJsonString(jsonString: string, options?: Partial): OrganizationAutoCharge; + + static equals(a: OrganizationAutoCharge | PlainMessage | undefined, b: OrganizationAutoCharge | PlainMessage | undefined): boolean; +} + +/** + * @generated from message stabilityai.api.dashboard.v1.Organization + */ +export declare class Organization extends Message { + /** + * @generated from field: string id = 1; + */ + id: string; + + /** + * @generated from field: string name = 2; + */ + name: string; + + /** + * @generated from field: string description = 3; + */ + description: string; + + /** + * @generated from field: repeated stabilityai.api.dashboard.v1.OrganizationMember members = 4; + */ + members: OrganizationMember[]; + + /** + * @generated from field: optional stabilityai.api.dashboard.v1.OrganizationPaymentInfo payment_info = 5; + */ + paymentInfo?: OrganizationPaymentInfo; + + /** + * @generated from field: optional string stripe_customer_id = 6; + */ + stripeCustomerId?: string; + + /** + * @generated from field: optional stabilityai.api.dashboard.v1.OrganizationAutoCharge auto_charge = 7; + */ + autoCharge?: OrganizationAutoCharge; + + constructor(data?: PartialMessage); + + static readonly runtime: typeof proto3; + static readonly typeName = "stabilityai.api.dashboard.v1.Organization"; + static readonly fields: FieldList; + + static fromBinary(bytes: Uint8Array, options?: Partial): Organization; + + static fromJson(jsonValue: JsonValue, options?: Partial): Organization; + + static fromJsonString(jsonString: string, options?: Partial): Organization; + + static equals(a: Organization | PlainMessage | undefined, b: Organization | PlainMessage | undefined): boolean; +} + +/** + * @generated from message stabilityai.api.dashboard.v1.APIKey + */ +export declare class APIKey extends Message { + /** + * @generated from field: string key = 1; + */ + key: string; + + /** + * @generated from field: bool is_secret = 2; + */ + isSecret: boolean; + + /** + * @generated from field: uint64 created_at = 3; + */ + createdAt: bigint; + + constructor(data?: PartialMessage); + + static readonly runtime: typeof proto3; + static readonly typeName = "stabilityai.api.dashboard.v1.APIKey"; + static readonly fields: FieldList; + + static fromBinary(bytes: Uint8Array, options?: Partial): APIKey; + + static fromJson(jsonValue: JsonValue, options?: Partial): APIKey; + + static fromJsonString(jsonString: string, options?: Partial): APIKey; + + static equals(a: APIKey | PlainMessage | undefined, b: APIKey | PlainMessage | undefined): boolean; +} + +/** + * @generated from message stabilityai.api.dashboard.v1.User + */ +export declare class User extends Message { + /** + * @generated from field: string id = 1; + */ + id: string; + + /** + * @generated from field: optional string auth_id = 2; + */ + authId?: string; + + /** + * @generated from field: string profile_picture = 3; + */ + profilePicture: string; + + /** + * @generated from field: string email = 4; + */ + email: string; + + /** + * @generated from field: repeated stabilityai.api.dashboard.v1.OrganizationMember organizations = 5; + */ + organizations: OrganizationMember[]; + + /** + * @generated from field: repeated stabilityai.api.dashboard.v1.APIKey api_keys = 7; + */ + apiKeys: APIKey[]; + + /** + * @generated from field: uint64 created_at = 8; + */ + createdAt: bigint; + + /** + * @generated from field: optional bool email_verified = 9; + */ + emailVerified?: boolean; + + constructor(data?: PartialMessage); + + static readonly runtime: typeof proto3; + static readonly typeName = "stabilityai.api.dashboard.v1.User"; + static readonly fields: FieldList; + + static fromBinary(bytes: Uint8Array, options?: Partial): User; + + static fromJson(jsonValue: JsonValue, options?: Partial): User; + + static fromJsonString(jsonString: string, options?: Partial): User; + + static equals(a: User | PlainMessage | undefined, b: User | PlainMessage | undefined): boolean; +} + +/** + * @generated from message stabilityai.api.dashboard.v1.CostData + */ +export declare class CostData extends Message { + /** + * @generated from field: uint32 amount_tokens = 1; + */ + amountTokens: number; + + /** + * @generated from field: double amount_credits = 2; + */ + amountCredits: number; + + constructor(data?: PartialMessage); + + static readonly runtime: typeof proto3; + static readonly typeName = "stabilityai.api.dashboard.v1.CostData"; + static readonly fields: FieldList; + + static fromBinary(bytes: Uint8Array, options?: Partial): CostData; + + static fromJson(jsonValue: JsonValue, options?: Partial): CostData; + + static fromJsonString(jsonString: string, options?: Partial): CostData; + + static equals(a: CostData | PlainMessage | undefined, b: CostData | PlainMessage | undefined): boolean; +} + +/** + * @generated from message stabilityai.api.dashboard.v1.UsageMetric + */ +export declare class UsageMetric extends Message { + /** + * @generated from field: string operation = 1; + */ + operation: string; + + /** + * @generated from field: string engine = 2; + */ + engine: string; + + /** + * @generated from field: stabilityai.api.dashboard.v1.CostData input_cost = 3; + */ + inputCost?: CostData; + + /** + * @generated from field: stabilityai.api.dashboard.v1.CostData output_cost = 4; + */ + outputCost?: CostData; + + /** + * @generated from field: optional string user = 5; + */ + user?: string; + + /** + * @generated from field: uint64 aggregation_timestamp = 6; + */ + aggregationTimestamp: bigint; + + constructor(data?: PartialMessage); + + static readonly runtime: typeof proto3; + static readonly typeName = "stabilityai.api.dashboard.v1.UsageMetric"; + static readonly fields: FieldList; + + static fromBinary(bytes: Uint8Array, options?: Partial): UsageMetric; + + static fromJson(jsonValue: JsonValue, options?: Partial): UsageMetric; + + static fromJsonString(jsonString: string, options?: Partial): UsageMetric; + + static equals(a: UsageMetric | PlainMessage | undefined, b: UsageMetric | PlainMessage | undefined): boolean; +} + +/** + * @generated from message stabilityai.api.dashboard.v1.CostTotal + */ +export declare class CostTotal extends Message { + /** + * @generated from field: uint32 amount_tokens = 1; + */ + amountTokens: number; + + /** + * @generated from field: double amount_credits = 2; + */ + amountCredits: number; + + constructor(data?: PartialMessage); + + static readonly runtime: typeof proto3; + static readonly typeName = "stabilityai.api.dashboard.v1.CostTotal"; + static readonly fields: FieldList; + + static fromBinary(bytes: Uint8Array, options?: Partial): CostTotal; + + static fromJson(jsonValue: JsonValue, options?: Partial): CostTotal; + + static fromJsonString(jsonString: string, options?: Partial): CostTotal; + + static equals(a: CostTotal | PlainMessage | undefined, b: CostTotal | PlainMessage | undefined): boolean; +} + +/** + * @generated from message stabilityai.api.dashboard.v1.TotalMetricsData + */ +export declare class TotalMetricsData extends Message { + /** + * @generated from field: stabilityai.api.dashboard.v1.CostTotal input_total = 1; + */ + inputTotal?: CostTotal; + + /** + * @generated from field: stabilityai.api.dashboard.v1.CostTotal output_total = 2; + */ + outputTotal?: CostTotal; + + constructor(data?: PartialMessage); + + static readonly runtime: typeof proto3; + static readonly typeName = "stabilityai.api.dashboard.v1.TotalMetricsData"; + static readonly fields: FieldList; + + static fromBinary(bytes: Uint8Array, options?: Partial): TotalMetricsData; + + static fromJson(jsonValue: JsonValue, options?: Partial): TotalMetricsData; + + static fromJsonString(jsonString: string, options?: Partial): TotalMetricsData; + + static equals(a: TotalMetricsData | PlainMessage | undefined, b: TotalMetricsData | PlainMessage | undefined): boolean; +} + +/** + * @generated from message stabilityai.api.dashboard.v1.Metrics + */ +export declare class Metrics extends Message { + /** + * @generated from field: repeated stabilityai.api.dashboard.v1.UsageMetric metrics = 1; + */ + metrics: UsageMetric[]; + + /** + * @generated from field: stabilityai.api.dashboard.v1.TotalMetricsData total = 2; + */ + total?: TotalMetricsData; + + constructor(data?: PartialMessage); + + static readonly runtime: typeof proto3; + static readonly typeName = "stabilityai.api.dashboard.v1.Metrics"; + static readonly fields: FieldList; + + static fromBinary(bytes: Uint8Array, options?: Partial): Metrics; + + static fromJson(jsonValue: JsonValue, options?: Partial): Metrics; + + static fromJsonString(jsonString: string, options?: Partial): Metrics; + + static equals(a: Metrics | PlainMessage | undefined, b: Metrics | PlainMessage | undefined): boolean; +} + +/** + * @generated from message stabilityai.api.dashboard.v1.EmptyRequest + */ +export declare class EmptyRequest extends Message { + constructor(data?: PartialMessage); + + static readonly runtime: typeof proto3; + static readonly typeName = "stabilityai.api.dashboard.v1.EmptyRequest"; + static readonly fields: FieldList; + + static fromBinary(bytes: Uint8Array, options?: Partial): EmptyRequest; + + static fromJson(jsonValue: JsonValue, options?: Partial): EmptyRequest; + + static fromJsonString(jsonString: string, options?: Partial): EmptyRequest; + + static equals(a: EmptyRequest | PlainMessage | undefined, b: EmptyRequest | PlainMessage | undefined): boolean; +} + +/** + * @generated from message stabilityai.api.dashboard.v1.GetOrganizationRequest + */ +export declare class GetOrganizationRequest extends Message { + /** + * @generated from field: string id = 1; + */ + id: string; + + constructor(data?: PartialMessage); + + static readonly runtime: typeof proto3; + static readonly typeName = "stabilityai.api.dashboard.v1.GetOrganizationRequest"; + static readonly fields: FieldList; + + static fromBinary(bytes: Uint8Array, options?: Partial): GetOrganizationRequest; + + static fromJson(jsonValue: JsonValue, options?: Partial): GetOrganizationRequest; + + static fromJsonString(jsonString: string, options?: Partial): GetOrganizationRequest; + + static equals(a: GetOrganizationRequest | PlainMessage | undefined, b: GetOrganizationRequest | PlainMessage | undefined): boolean; +} + +/** + * @generated from message stabilityai.api.dashboard.v1.GetMetricsRequest + */ +export declare class GetMetricsRequest extends Message { + /** + * @generated from field: string organization_id = 1; + */ + organizationId: string; + + /** + * @generated from field: optional string user_id = 2; + */ + userId?: string; + + /** + * @generated from field: uint64 range_from = 3; + */ + rangeFrom: bigint; + + /** + * @generated from field: uint64 range_to = 4; + */ + rangeTo: bigint; + + /** + * @generated from field: bool include_per_request_metrics = 5; + */ + includePerRequestMetrics: boolean; + + constructor(data?: PartialMessage); + + static readonly runtime: typeof proto3; + static readonly typeName = "stabilityai.api.dashboard.v1.GetMetricsRequest"; + static readonly fields: FieldList; + + static fromBinary(bytes: Uint8Array, options?: Partial): GetMetricsRequest; + + static fromJson(jsonValue: JsonValue, options?: Partial): GetMetricsRequest; + + static fromJsonString(jsonString: string, options?: Partial): GetMetricsRequest; + + static equals(a: GetMetricsRequest | PlainMessage | undefined, b: GetMetricsRequest | PlainMessage | undefined): boolean; +} + +/** + * @generated from message stabilityai.api.dashboard.v1.APIKeyRequest + */ +export declare class APIKeyRequest extends Message { + /** + * @generated from field: bool is_secret = 1; + */ + isSecret: boolean; + + constructor(data?: PartialMessage); + + static readonly runtime: typeof proto3; + static readonly typeName = "stabilityai.api.dashboard.v1.APIKeyRequest"; + static readonly fields: FieldList; + + static fromBinary(bytes: Uint8Array, options?: Partial): APIKeyRequest; + + static fromJson(jsonValue: JsonValue, options?: Partial): APIKeyRequest; + + static fromJsonString(jsonString: string, options?: Partial): APIKeyRequest; + + static equals(a: APIKeyRequest | PlainMessage | undefined, b: APIKeyRequest | PlainMessage | undefined): boolean; +} + +/** + * @generated from message stabilityai.api.dashboard.v1.APIKeyFindRequest + */ +export declare class APIKeyFindRequest extends Message { + /** + * @generated from field: string id = 1; + */ + id: string; + + constructor(data?: PartialMessage); + + static readonly runtime: typeof proto3; + static readonly typeName = "stabilityai.api.dashboard.v1.APIKeyFindRequest"; + static readonly fields: FieldList; + + static fromBinary(bytes: Uint8Array, options?: Partial): APIKeyFindRequest; + + static fromJson(jsonValue: JsonValue, options?: Partial): APIKeyFindRequest; + + static fromJsonString(jsonString: string, options?: Partial): APIKeyFindRequest; + + static equals(a: APIKeyFindRequest | PlainMessage | undefined, b: APIKeyFindRequest | PlainMessage | undefined): boolean; +} + +/** + * @generated from message stabilityai.api.dashboard.v1.UpdateDefaultOrganizationRequest + */ +export declare class UpdateDefaultOrganizationRequest extends Message { + /** + * @generated from field: string organization_id = 1; + */ + organizationId: string; + + constructor(data?: PartialMessage); + + static readonly runtime: typeof proto3; + static readonly typeName = "stabilityai.api.dashboard.v1.UpdateDefaultOrganizationRequest"; + static readonly fields: FieldList; + + static fromBinary(bytes: Uint8Array, options?: Partial): UpdateDefaultOrganizationRequest; + + static fromJson(jsonValue: JsonValue, options?: Partial): UpdateDefaultOrganizationRequest; + + static fromJsonString(jsonString: string, options?: Partial): UpdateDefaultOrganizationRequest; + + static equals(a: UpdateDefaultOrganizationRequest | PlainMessage | undefined, b: UpdateDefaultOrganizationRequest | PlainMessage | undefined): boolean; +} + +/** + * @generated from message stabilityai.api.dashboard.v1.ClientSettings + */ +export declare class ClientSettings extends Message { + /** + * @generated from field: bytes settings = 1; + */ + settings: Uint8Array; + + constructor(data?: PartialMessage); + + static readonly runtime: typeof proto3; + static readonly typeName = "stabilityai.api.dashboard.v1.ClientSettings"; + static readonly fields: FieldList; + + static fromBinary(bytes: Uint8Array, options?: Partial): ClientSettings; + + static fromJson(jsonValue: JsonValue, options?: Partial): ClientSettings; + + static fromJsonString(jsonString: string, options?: Partial): ClientSettings; + + static equals(a: ClientSettings | PlainMessage | undefined, b: ClientSettings | PlainMessage | undefined): boolean; +} + +/** + * @generated from message stabilityai.api.dashboard.v1.CreateAutoChargeIntentRequest + */ +export declare class CreateAutoChargeIntentRequest extends Message { + /** + * @generated from field: string organization_id = 1; + */ + organizationId: string; + + /** + * @generated from field: uint64 monthly_maximum = 2; + */ + monthlyMaximum: bigint; + + /** + * @generated from field: uint64 minimum_value = 3; + */ + minimumValue: bigint; + + /** + * @generated from field: uint64 amount_credits = 4; + */ + amountCredits: bigint; + + constructor(data?: PartialMessage); + + static readonly runtime: typeof proto3; + static readonly typeName = "stabilityai.api.dashboard.v1.CreateAutoChargeIntentRequest"; + static readonly fields: FieldList; + + static fromBinary(bytes: Uint8Array, options?: Partial): CreateAutoChargeIntentRequest; + + static fromJson(jsonValue: JsonValue, options?: Partial): CreateAutoChargeIntentRequest; + + static fromJsonString(jsonString: string, options?: Partial): CreateAutoChargeIntentRequest; + + static equals(a: CreateAutoChargeIntentRequest | PlainMessage | undefined, b: CreateAutoChargeIntentRequest | PlainMessage | undefined): boolean; +} + +/** + * @generated from message stabilityai.api.dashboard.v1.CreateChargeRequest + */ +export declare class CreateChargeRequest extends Message { + /** + * @generated from field: uint64 amount = 1; + */ + amount: bigint; + + /** + * @generated from field: string organization_id = 2; + */ + organizationId: string; + + constructor(data?: PartialMessage); + + static readonly runtime: typeof proto3; + static readonly typeName = "stabilityai.api.dashboard.v1.CreateChargeRequest"; + static readonly fields: FieldList; + + static fromBinary(bytes: Uint8Array, options?: Partial): CreateChargeRequest; + + static fromJson(jsonValue: JsonValue, options?: Partial): CreateChargeRequest; + + static fromJsonString(jsonString: string, options?: Partial): CreateChargeRequest; + + static equals(a: CreateChargeRequest | PlainMessage | undefined, b: CreateChargeRequest | PlainMessage | undefined): boolean; +} + +/** + * @generated from message stabilityai.api.dashboard.v1.GetChargesRequest + */ +export declare class GetChargesRequest extends Message { + /** + * @generated from field: string organization_id = 1; + */ + organizationId: string; + + /** + * @generated from field: uint64 range_from = 2; + */ + rangeFrom: bigint; + + /** + * @generated from field: uint64 range_to = 3; + */ + rangeTo: bigint; + + constructor(data?: PartialMessage); + + static readonly runtime: typeof proto3; + static readonly typeName = "stabilityai.api.dashboard.v1.GetChargesRequest"; + static readonly fields: FieldList; + + static fromBinary(bytes: Uint8Array, options?: Partial): GetChargesRequest; + + static fromJson(jsonValue: JsonValue, options?: Partial): GetChargesRequest; + + static fromJsonString(jsonString: string, options?: Partial): GetChargesRequest; + + static equals(a: GetChargesRequest | PlainMessage | undefined, b: GetChargesRequest | PlainMessage | undefined): boolean; +} + +/** + * @generated from message stabilityai.api.dashboard.v1.Charge + */ +export declare class Charge extends Message { + /** + * @generated from field: string id = 1; + */ + id: string; + + /** + * @generated from field: bool paid = 2; + */ + paid: boolean; + + /** + * @generated from field: string receipt_link = 3; + */ + receiptLink: string; + + /** + * @generated from field: string payment_link = 4; + */ + paymentLink: string; + + /** + * @generated from field: uint64 created_at = 5; + */ + createdAt: bigint; + + /** + * @generated from field: uint64 amount_credits = 6; + */ + amountCredits: bigint; + + constructor(data?: PartialMessage); + + static readonly runtime: typeof proto3; + static readonly typeName = "stabilityai.api.dashboard.v1.Charge"; + static readonly fields: FieldList; + + static fromBinary(bytes: Uint8Array, options?: Partial): Charge; + + static fromJson(jsonValue: JsonValue, options?: Partial): Charge; + + static fromJsonString(jsonString: string, options?: Partial): Charge; + + static equals(a: Charge | PlainMessage | undefined, b: Charge | PlainMessage | undefined): boolean; +} + +/** + * @generated from message stabilityai.api.dashboard.v1.Charges + */ +export declare class Charges extends Message { + /** + * @generated from field: repeated stabilityai.api.dashboard.v1.Charge charges = 1; + */ + charges: Charge[]; + + constructor(data?: PartialMessage); + + static readonly runtime: typeof proto3; + static readonly typeName = "stabilityai.api.dashboard.v1.Charges"; + static readonly fields: FieldList; + + static fromBinary(bytes: Uint8Array, options?: Partial): Charges; + + static fromJson(jsonValue: JsonValue, options?: Partial): Charges; + + static fromJsonString(jsonString: string, options?: Partial): Charges; + + static equals(a: Charges | PlainMessage | undefined, b: Charges | PlainMessage | undefined): boolean; +} + +/** + * @generated from message stabilityai.api.dashboard.v1.GetAutoChargeRequest + */ +export declare class GetAutoChargeRequest extends Message { + /** + * @generated from field: string organization_id = 1; + */ + organizationId: string; + + constructor(data?: PartialMessage); + + static readonly runtime: typeof proto3; + static readonly typeName = "stabilityai.api.dashboard.v1.GetAutoChargeRequest"; + static readonly fields: FieldList; + + static fromBinary(bytes: Uint8Array, options?: Partial): GetAutoChargeRequest; + + static fromJson(jsonValue: JsonValue, options?: Partial): GetAutoChargeRequest; + + static fromJsonString(jsonString: string, options?: Partial): GetAutoChargeRequest; + + static equals(a: GetAutoChargeRequest | PlainMessage | undefined, b: GetAutoChargeRequest | PlainMessage | undefined): boolean; +} + +/** + * @generated from message stabilityai.api.dashboard.v1.AutoChargeIntent + */ +export declare class AutoChargeIntent extends Message { + /** + * @generated from field: string id = 1; + */ + id: string; + + /** + * @generated from field: string payment_link = 2; + */ + paymentLink: string; + + /** + * @generated from field: uint64 created_at = 3; + */ + createdAt: bigint; + + /** + * @generated from field: uint64 monthly_maximum = 4; + */ + monthlyMaximum: bigint; + + /** + * @generated from field: uint64 minimum_value = 5; + */ + minimumValue: bigint; + + /** + * @generated from field: uint64 amount_credits = 6; + */ + amountCredits: bigint; + + constructor(data?: PartialMessage); + + static readonly runtime: typeof proto3; + static readonly typeName = "stabilityai.api.dashboard.v1.AutoChargeIntent"; + static readonly fields: FieldList; + + static fromBinary(bytes: Uint8Array, options?: Partial): AutoChargeIntent; + + static fromJson(jsonValue: JsonValue, options?: Partial): AutoChargeIntent; + + static fromJsonString(jsonString: string, options?: Partial): AutoChargeIntent; + + static equals(a: AutoChargeIntent | PlainMessage | undefined, b: AutoChargeIntent | PlainMessage | undefined): boolean; +} + +/** + * @generated from message stabilityai.api.dashboard.v1.UpdateUserInfoRequest + */ +export declare class UpdateUserInfoRequest extends Message { + /** + * @generated from field: optional string email = 1; + */ + email?: string; + + constructor(data?: PartialMessage); + + static readonly runtime: typeof proto3; + static readonly typeName = "stabilityai.api.dashboard.v1.UpdateUserInfoRequest"; + static readonly fields: FieldList; + + static fromBinary(bytes: Uint8Array, options?: Partial): UpdateUserInfoRequest; + + static fromJson(jsonValue: JsonValue, options?: Partial): UpdateUserInfoRequest; + + static fromJsonString(jsonString: string, options?: Partial): UpdateUserInfoRequest; + + static equals(a: UpdateUserInfoRequest | PlainMessage | undefined, b: UpdateUserInfoRequest | PlainMessage | undefined): boolean; +} + +/** + * @generated from message stabilityai.api.dashboard.v1.UserPasswordChangeTicket + */ +export declare class UserPasswordChangeTicket extends Message { + /** + * @generated from field: string ticket = 1; + */ + ticket: string; + + constructor(data?: PartialMessage); + + static readonly runtime: typeof proto3; + static readonly typeName = "stabilityai.api.dashboard.v1.UserPasswordChangeTicket"; + static readonly fields: FieldList; + + static fromBinary(bytes: Uint8Array, options?: Partial): UserPasswordChangeTicket; + + static fromJson(jsonValue: JsonValue, options?: Partial): UserPasswordChangeTicket; + + static fromJsonString(jsonString: string, options?: Partial): UserPasswordChangeTicket; + + static equals(a: UserPasswordChangeTicket | PlainMessage | undefined, b: UserPasswordChangeTicket | PlainMessage | undefined): boolean; +} + diff --git a/src/stability_api/platform/dashboard/v1/dashboard_pb.js b/src/stability_api/platform/dashboard/v1/dashboard_pb.js new file mode 100644 index 0000000..6799971 --- /dev/null +++ b/src/stability_api/platform/dashboard/v1/dashboard_pb.js @@ -0,0 +1,350 @@ +// @generated by protoc-gen-es v1.3.0 +// @generated from file stability_api/platform/dashboard/v1/dashboard.proto (package stabilityai.api.dashboard.v1, syntax proto3) +/* eslint-disable */ +// @ts-nocheck + +import { proto3 } from "@bufbuild/protobuf"; + +/** + * @generated from enum stabilityai.api.dashboard.v1.OrganizationRole + */ +export const OrganizationRole = proto3.makeEnum( + "stabilityai.api.dashboard.v1.OrganizationRole", + [ + {no: 0, name: "MEMBER"}, + {no: 1, name: "ACCOUNTANT"}, + {no: 2, name: "OWNER"}, + ], +); + +/** + * @generated from message stabilityai.api.dashboard.v1.OrganizationMember + */ +export const OrganizationMember = proto3.makeMessageType( + "stabilityai.api.dashboard.v1.OrganizationMember", + () => [ + { no: 1, name: "organization", kind: "message", T: Organization }, + { no: 2, name: "user", kind: "message", T: User, opt: true }, + { no: 3, name: "role", kind: "enum", T: proto3.getEnumType(OrganizationRole) }, + { no: 4, name: "is_default", kind: "scalar", T: 8 /* ScalarType.BOOL */ }, + ], +); + +/** + * @generated from message stabilityai.api.dashboard.v1.OrganizationGrant + */ +export const OrganizationGrant = proto3.makeMessageType( + "stabilityai.api.dashboard.v1.OrganizationGrant", + () => [ + { no: 1, name: "amount_granted", kind: "scalar", T: 1 /* ScalarType.DOUBLE */ }, + { no: 2, name: "amount_used", kind: "scalar", T: 1 /* ScalarType.DOUBLE */ }, + { no: 3, name: "expires_at", kind: "scalar", T: 4 /* ScalarType.UINT64 */ }, + { no: 4, name: "granted_at", kind: "scalar", T: 4 /* ScalarType.UINT64 */ }, + ], +); + +/** + * @generated from message stabilityai.api.dashboard.v1.OrganizationPaymentInfo + */ +export const OrganizationPaymentInfo = proto3.makeMessageType( + "stabilityai.api.dashboard.v1.OrganizationPaymentInfo", + () => [ + { no: 1, name: "balance", kind: "scalar", T: 1 /* ScalarType.DOUBLE */ }, + { no: 2, name: "grants", kind: "message", T: OrganizationGrant, repeated: true }, + ], +); + +/** + * @generated from message stabilityai.api.dashboard.v1.OrganizationAutoCharge + */ +export const OrganizationAutoCharge = proto3.makeMessageType( + "stabilityai.api.dashboard.v1.OrganizationAutoCharge", + () => [ + { no: 1, name: "enabled", kind: "scalar", T: 8 /* ScalarType.BOOL */ }, + { no: 2, name: "id", kind: "scalar", T: 9 /* ScalarType.STRING */ }, + { no: 3, name: "created_at", kind: "scalar", T: 4 /* ScalarType.UINT64 */ }, + ], +); + +/** + * @generated from message stabilityai.api.dashboard.v1.Organization + */ +export const Organization = proto3.makeMessageType( + "stabilityai.api.dashboard.v1.Organization", + () => [ + { no: 1, name: "id", kind: "scalar", T: 9 /* ScalarType.STRING */ }, + { no: 2, name: "name", kind: "scalar", T: 9 /* ScalarType.STRING */ }, + { no: 3, name: "description", kind: "scalar", T: 9 /* ScalarType.STRING */ }, + { no: 4, name: "members", kind: "message", T: OrganizationMember, repeated: true }, + { no: 5, name: "payment_info", kind: "message", T: OrganizationPaymentInfo, opt: true }, + { no: 6, name: "stripe_customer_id", kind: "scalar", T: 9 /* ScalarType.STRING */, opt: true }, + { no: 7, name: "auto_charge", kind: "message", T: OrganizationAutoCharge, opt: true }, + ], +); + +/** + * @generated from message stabilityai.api.dashboard.v1.APIKey + */ +export const APIKey = proto3.makeMessageType( + "stabilityai.api.dashboard.v1.APIKey", + () => [ + { no: 1, name: "key", kind: "scalar", T: 9 /* ScalarType.STRING */ }, + { no: 2, name: "is_secret", kind: "scalar", T: 8 /* ScalarType.BOOL */ }, + { no: 3, name: "created_at", kind: "scalar", T: 4 /* ScalarType.UINT64 */ }, + ], +); + +/** + * @generated from message stabilityai.api.dashboard.v1.User + */ +export const User = proto3.makeMessageType( + "stabilityai.api.dashboard.v1.User", + () => [ + { no: 1, name: "id", kind: "scalar", T: 9 /* ScalarType.STRING */ }, + { no: 2, name: "auth_id", kind: "scalar", T: 9 /* ScalarType.STRING */, opt: true }, + { no: 3, name: "profile_picture", kind: "scalar", T: 9 /* ScalarType.STRING */ }, + { no: 4, name: "email", kind: "scalar", T: 9 /* ScalarType.STRING */ }, + { no: 5, name: "organizations", kind: "message", T: OrganizationMember, repeated: true }, + { no: 7, name: "api_keys", kind: "message", T: APIKey, repeated: true }, + { no: 8, name: "created_at", kind: "scalar", T: 4 /* ScalarType.UINT64 */ }, + { no: 9, name: "email_verified", kind: "scalar", T: 8 /* ScalarType.BOOL */, opt: true }, + ], +); + +/** + * @generated from message stabilityai.api.dashboard.v1.CostData + */ +export const CostData = proto3.makeMessageType( + "stabilityai.api.dashboard.v1.CostData", + () => [ + { no: 1, name: "amount_tokens", kind: "scalar", T: 13 /* ScalarType.UINT32 */ }, + { no: 2, name: "amount_credits", kind: "scalar", T: 1 /* ScalarType.DOUBLE */ }, + ], +); + +/** + * @generated from message stabilityai.api.dashboard.v1.UsageMetric + */ +export const UsageMetric = proto3.makeMessageType( + "stabilityai.api.dashboard.v1.UsageMetric", + () => [ + { no: 1, name: "operation", kind: "scalar", T: 9 /* ScalarType.STRING */ }, + { no: 2, name: "engine", kind: "scalar", T: 9 /* ScalarType.STRING */ }, + { no: 3, name: "input_cost", kind: "message", T: CostData }, + { no: 4, name: "output_cost", kind: "message", T: CostData }, + { no: 5, name: "user", kind: "scalar", T: 9 /* ScalarType.STRING */, opt: true }, + { no: 6, name: "aggregation_timestamp", kind: "scalar", T: 4 /* ScalarType.UINT64 */ }, + ], +); + +/** + * @generated from message stabilityai.api.dashboard.v1.CostTotal + */ +export const CostTotal = proto3.makeMessageType( + "stabilityai.api.dashboard.v1.CostTotal", + () => [ + { no: 1, name: "amount_tokens", kind: "scalar", T: 13 /* ScalarType.UINT32 */ }, + { no: 2, name: "amount_credits", kind: "scalar", T: 1 /* ScalarType.DOUBLE */ }, + ], +); + +/** + * @generated from message stabilityai.api.dashboard.v1.TotalMetricsData + */ +export const TotalMetricsData = proto3.makeMessageType( + "stabilityai.api.dashboard.v1.TotalMetricsData", + () => [ + { no: 1, name: "input_total", kind: "message", T: CostTotal }, + { no: 2, name: "output_total", kind: "message", T: CostTotal }, + ], +); + +/** + * @generated from message stabilityai.api.dashboard.v1.Metrics + */ +export const Metrics = proto3.makeMessageType( + "stabilityai.api.dashboard.v1.Metrics", + () => [ + { no: 1, name: "metrics", kind: "message", T: UsageMetric, repeated: true }, + { no: 2, name: "total", kind: "message", T: TotalMetricsData }, + ], +); + +/** + * @generated from message stabilityai.api.dashboard.v1.EmptyRequest + */ +export const EmptyRequest = proto3.makeMessageType( + "stabilityai.api.dashboard.v1.EmptyRequest", + [], +); + +/** + * @generated from message stabilityai.api.dashboard.v1.GetOrganizationRequest + */ +export const GetOrganizationRequest = proto3.makeMessageType( + "stabilityai.api.dashboard.v1.GetOrganizationRequest", + () => [ + { no: 1, name: "id", kind: "scalar", T: 9 /* ScalarType.STRING */ }, + ], +); + +/** + * @generated from message stabilityai.api.dashboard.v1.GetMetricsRequest + */ +export const GetMetricsRequest = proto3.makeMessageType( + "stabilityai.api.dashboard.v1.GetMetricsRequest", + () => [ + { no: 1, name: "organization_id", kind: "scalar", T: 9 /* ScalarType.STRING */ }, + { no: 2, name: "user_id", kind: "scalar", T: 9 /* ScalarType.STRING */, opt: true }, + { no: 3, name: "range_from", kind: "scalar", T: 4 /* ScalarType.UINT64 */ }, + { no: 4, name: "range_to", kind: "scalar", T: 4 /* ScalarType.UINT64 */ }, + { no: 5, name: "include_per_request_metrics", kind: "scalar", T: 8 /* ScalarType.BOOL */ }, + ], +); + +/** + * @generated from message stabilityai.api.dashboard.v1.APIKeyRequest + */ +export const APIKeyRequest = proto3.makeMessageType( + "stabilityai.api.dashboard.v1.APIKeyRequest", + () => [ + { no: 1, name: "is_secret", kind: "scalar", T: 8 /* ScalarType.BOOL */ }, + ], +); + +/** + * @generated from message stabilityai.api.dashboard.v1.APIKeyFindRequest + */ +export const APIKeyFindRequest = proto3.makeMessageType( + "stabilityai.api.dashboard.v1.APIKeyFindRequest", + () => [ + { no: 1, name: "id", kind: "scalar", T: 9 /* ScalarType.STRING */ }, + ], +); + +/** + * @generated from message stabilityai.api.dashboard.v1.UpdateDefaultOrganizationRequest + */ +export const UpdateDefaultOrganizationRequest = proto3.makeMessageType( + "stabilityai.api.dashboard.v1.UpdateDefaultOrganizationRequest", + () => [ + { no: 1, name: "organization_id", kind: "scalar", T: 9 /* ScalarType.STRING */ }, + ], +); + +/** + * @generated from message stabilityai.api.dashboard.v1.ClientSettings + */ +export const ClientSettings = proto3.makeMessageType( + "stabilityai.api.dashboard.v1.ClientSettings", + () => [ + { no: 1, name: "settings", kind: "scalar", T: 12 /* ScalarType.BYTES */ }, + ], +); + +/** + * @generated from message stabilityai.api.dashboard.v1.CreateAutoChargeIntentRequest + */ +export const CreateAutoChargeIntentRequest = proto3.makeMessageType( + "stabilityai.api.dashboard.v1.CreateAutoChargeIntentRequest", + () => [ + { no: 1, name: "organization_id", kind: "scalar", T: 9 /* ScalarType.STRING */ }, + { no: 2, name: "monthly_maximum", kind: "scalar", T: 4 /* ScalarType.UINT64 */ }, + { no: 3, name: "minimum_value", kind: "scalar", T: 4 /* ScalarType.UINT64 */ }, + { no: 4, name: "amount_credits", kind: "scalar", T: 4 /* ScalarType.UINT64 */ }, + ], +); + +/** + * @generated from message stabilityai.api.dashboard.v1.CreateChargeRequest + */ +export const CreateChargeRequest = proto3.makeMessageType( + "stabilityai.api.dashboard.v1.CreateChargeRequest", + () => [ + { no: 1, name: "amount", kind: "scalar", T: 4 /* ScalarType.UINT64 */ }, + { no: 2, name: "organization_id", kind: "scalar", T: 9 /* ScalarType.STRING */ }, + ], +); + +/** + * @generated from message stabilityai.api.dashboard.v1.GetChargesRequest + */ +export const GetChargesRequest = proto3.makeMessageType( + "stabilityai.api.dashboard.v1.GetChargesRequest", + () => [ + { no: 1, name: "organization_id", kind: "scalar", T: 9 /* ScalarType.STRING */ }, + { no: 2, name: "range_from", kind: "scalar", T: 4 /* ScalarType.UINT64 */ }, + { no: 3, name: "range_to", kind: "scalar", T: 4 /* ScalarType.UINT64 */ }, + ], +); + +/** + * @generated from message stabilityai.api.dashboard.v1.Charge + */ +export const Charge = proto3.makeMessageType( + "stabilityai.api.dashboard.v1.Charge", + () => [ + { no: 1, name: "id", kind: "scalar", T: 9 /* ScalarType.STRING */ }, + { no: 2, name: "paid", kind: "scalar", T: 8 /* ScalarType.BOOL */ }, + { no: 3, name: "receipt_link", kind: "scalar", T: 9 /* ScalarType.STRING */ }, + { no: 4, name: "payment_link", kind: "scalar", T: 9 /* ScalarType.STRING */ }, + { no: 5, name: "created_at", kind: "scalar", T: 4 /* ScalarType.UINT64 */ }, + { no: 6, name: "amount_credits", kind: "scalar", T: 4 /* ScalarType.UINT64 */ }, + ], +); + +/** + * @generated from message stabilityai.api.dashboard.v1.Charges + */ +export const Charges = proto3.makeMessageType( + "stabilityai.api.dashboard.v1.Charges", + () => [ + { no: 1, name: "charges", kind: "message", T: Charge, repeated: true }, + ], +); + +/** + * @generated from message stabilityai.api.dashboard.v1.GetAutoChargeRequest + */ +export const GetAutoChargeRequest = proto3.makeMessageType( + "stabilityai.api.dashboard.v1.GetAutoChargeRequest", + () => [ + { no: 1, name: "organization_id", kind: "scalar", T: 9 /* ScalarType.STRING */ }, + ], +); + +/** + * @generated from message stabilityai.api.dashboard.v1.AutoChargeIntent + */ +export const AutoChargeIntent = proto3.makeMessageType( + "stabilityai.api.dashboard.v1.AutoChargeIntent", + () => [ + { no: 1, name: "id", kind: "scalar", T: 9 /* ScalarType.STRING */ }, + { no: 2, name: "payment_link", kind: "scalar", T: 9 /* ScalarType.STRING */ }, + { no: 3, name: "created_at", kind: "scalar", T: 4 /* ScalarType.UINT64 */ }, + { no: 4, name: "monthly_maximum", kind: "scalar", T: 4 /* ScalarType.UINT64 */ }, + { no: 5, name: "minimum_value", kind: "scalar", T: 4 /* ScalarType.UINT64 */ }, + { no: 6, name: "amount_credits", kind: "scalar", T: 4 /* ScalarType.UINT64 */ }, + ], +); + +/** + * @generated from message stabilityai.api.dashboard.v1.UpdateUserInfoRequest + */ +export const UpdateUserInfoRequest = proto3.makeMessageType( + "stabilityai.api.dashboard.v1.UpdateUserInfoRequest", + () => [ + { no: 1, name: "email", kind: "scalar", T: 9 /* ScalarType.STRING */, opt: true }, + ], +); + +/** + * @generated from message stabilityai.api.dashboard.v1.UserPasswordChangeTicket + */ +export const UserPasswordChangeTicket = proto3.makeMessageType( + "stabilityai.api.dashboard.v1.UserPasswordChangeTicket", + () => [ + { no: 1, name: "ticket", kind: "scalar", T: 9 /* ScalarType.STRING */ }, + ], +); + diff --git a/src/stability_api/platform/dashboard/v1/dashboard_pb2.py b/src/stability_api/platform/dashboard/v1/dashboard_pb2.py new file mode 100644 index 0000000..c0fffad --- /dev/null +++ b/src/stability_api/platform/dashboard/v1/dashboard_pb2.py @@ -0,0 +1,85 @@ +# -*- coding: utf-8 -*- +# Generated by the protocol buffer compiler. DO NOT EDIT! +# source: stability_api/platform/dashboard/v1/dashboard.proto +"""Generated protocol buffer code.""" +from google.protobuf import descriptor as _descriptor +from google.protobuf import descriptor_pool as _descriptor_pool +from google.protobuf import symbol_database as _symbol_database +from google.protobuf.internal import builder as _builder +# @@protoc_insertion_point(imports) + +_sym_db = _symbol_database.Default() + + + + +DESCRIPTOR = _descriptor_pool.Default().AddSerializedFile(b'\n3stability_api/platform/dashboard/v1/dashboard.proto\x12\x1cstabilityai.api.dashboard.v1\"\x8d\x02\n\x12OrganizationMember\x12N\n\x0corganization\x18\x01 \x01(\x0b\x32*.stabilityai.api.dashboard.v1.OrganizationR\x0corganization\x12;\n\x04user\x18\x02 \x01(\x0b\x32\".stabilityai.api.dashboard.v1.UserH\x00R\x04user\x88\x01\x01\x12\x42\n\x04role\x18\x03 \x01(\x0e\x32..stabilityai.api.dashboard.v1.OrganizationRoleR\x04role\x12\x1d\n\nis_default\x18\x04 \x01(\x08R\tisDefaultB\x07\n\x05_user\"\x99\x01\n\x11OrganizationGrant\x12%\n\x0e\x61mount_granted\x18\x01 \x01(\x01R\ramountGranted\x12\x1f\n\x0b\x61mount_used\x18\x02 \x01(\x01R\namountUsed\x12\x1d\n\nexpires_at\x18\x03 \x01(\x04R\texpiresAt\x12\x1d\n\ngranted_at\x18\x04 \x01(\x04R\tgrantedAt\"|\n\x17OrganizationPaymentInfo\x12\x18\n\x07\x62\x61lance\x18\x01 \x01(\x01R\x07\x62\x61lance\x12G\n\x06grants\x18\x02 \x03(\x0b\x32/.stabilityai.api.dashboard.v1.OrganizationGrantR\x06grants\"a\n\x16OrganizationAutoCharge\x12\x18\n\x07\x65nabled\x18\x01 \x01(\x08R\x07\x65nabled\x12\x0e\n\x02id\x18\x02 \x01(\tR\x02id\x12\x1d\n\ncreated_at\x18\x03 \x01(\x04R\tcreatedAt\"\xc6\x03\n\x0cOrganization\x12\x0e\n\x02id\x18\x01 \x01(\tR\x02id\x12\x12\n\x04name\x18\x02 \x01(\tR\x04name\x12 \n\x0b\x64\x65scription\x18\x03 \x01(\tR\x0b\x64\x65scription\x12J\n\x07members\x18\x04 \x03(\x0b\x32\x30.stabilityai.api.dashboard.v1.OrganizationMemberR\x07members\x12]\n\x0cpayment_info\x18\x05 \x01(\x0b\x32\x35.stabilityai.api.dashboard.v1.OrganizationPaymentInfoH\x00R\x0bpaymentInfo\x88\x01\x01\x12\x31\n\x12stripe_customer_id\x18\x06 \x01(\tH\x01R\x10stripeCustomerId\x88\x01\x01\x12Z\n\x0b\x61uto_charge\x18\x07 \x01(\x0b\x32\x34.stabilityai.api.dashboard.v1.OrganizationAutoChargeH\x02R\nautoCharge\x88\x01\x01\x42\x0f\n\r_payment_infoB\x15\n\x13_stripe_customer_idB\x0e\n\x0c_auto_charge\"V\n\x06\x41PIKey\x12\x10\n\x03key\x18\x01 \x01(\tR\x03key\x12\x1b\n\tis_secret\x18\x02 \x01(\x08R\x08isSecret\x12\x1d\n\ncreated_at\x18\x03 \x01(\x04R\tcreatedAt\"\xf6\x02\n\x04User\x12\x0e\n\x02id\x18\x01 \x01(\tR\x02id\x12\x1c\n\x07\x61uth_id\x18\x02 \x01(\tH\x00R\x06\x61uthId\x88\x01\x01\x12\'\n\x0fprofile_picture\x18\x03 \x01(\tR\x0eprofilePicture\x12\x14\n\x05\x65mail\x18\x04 \x01(\tR\x05\x65mail\x12V\n\rorganizations\x18\x05 \x03(\x0b\x32\x30.stabilityai.api.dashboard.v1.OrganizationMemberR\rorganizations\x12?\n\x08\x61pi_keys\x18\x07 \x03(\x0b\x32$.stabilityai.api.dashboard.v1.APIKeyR\x07\x61piKeys\x12\x1d\n\ncreated_at\x18\x08 \x01(\x04R\tcreatedAt\x12*\n\x0e\x65mail_verified\x18\t \x01(\x08H\x01R\remailVerified\x88\x01\x01\x42\n\n\x08_auth_idB\x11\n\x0f_email_verified\"V\n\x08\x43ostData\x12#\n\ramount_tokens\x18\x01 \x01(\rR\x0c\x61mountTokens\x12%\n\x0e\x61mount_credits\x18\x02 \x01(\x01R\ramountCredits\"\xaa\x02\n\x0bUsageMetric\x12\x1c\n\toperation\x18\x01 \x01(\tR\toperation\x12\x16\n\x06\x65ngine\x18\x02 \x01(\tR\x06\x65ngine\x12\x45\n\ninput_cost\x18\x03 \x01(\x0b\x32&.stabilityai.api.dashboard.v1.CostDataR\tinputCost\x12G\n\x0boutput_cost\x18\x04 \x01(\x0b\x32&.stabilityai.api.dashboard.v1.CostDataR\noutputCost\x12\x17\n\x04user\x18\x05 \x01(\tH\x00R\x04user\x88\x01\x01\x12\x33\n\x15\x61ggregation_timestamp\x18\x06 \x01(\x04R\x14\x61ggregationTimestampB\x07\n\x05_user\"W\n\tCostTotal\x12#\n\ramount_tokens\x18\x01 \x01(\rR\x0c\x61mountTokens\x12%\n\x0e\x61mount_credits\x18\x02 \x01(\x01R\ramountCredits\"\xa8\x01\n\x10TotalMetricsData\x12H\n\x0binput_total\x18\x01 \x01(\x0b\x32\'.stabilityai.api.dashboard.v1.CostTotalR\ninputTotal\x12J\n\x0coutput_total\x18\x02 \x01(\x0b\x32\'.stabilityai.api.dashboard.v1.CostTotalR\x0boutputTotal\"\x94\x01\n\x07Metrics\x12\x43\n\x07metrics\x18\x01 \x03(\x0b\x32).stabilityai.api.dashboard.v1.UsageMetricR\x07metrics\x12\x44\n\x05total\x18\x02 \x01(\x0b\x32..stabilityai.api.dashboard.v1.TotalMetricsDataR\x05total\"\x0e\n\x0c\x45mptyRequest\"(\n\x16GetOrganizationRequest\x12\x0e\n\x02id\x18\x01 \x01(\tR\x02id\"\xdf\x01\n\x11GetMetricsRequest\x12\'\n\x0forganization_id\x18\x01 \x01(\tR\x0eorganizationId\x12\x1c\n\x07user_id\x18\x02 \x01(\tH\x00R\x06userId\x88\x01\x01\x12\x1d\n\nrange_from\x18\x03 \x01(\x04R\trangeFrom\x12\x19\n\x08range_to\x18\x04 \x01(\x04R\x07rangeTo\x12=\n\x1binclude_per_request_metrics\x18\x05 \x01(\x08R\x18includePerRequestMetricsB\n\n\x08_user_id\",\n\rAPIKeyRequest\x12\x1b\n\tis_secret\x18\x01 \x01(\x08R\x08isSecret\"#\n\x11\x41PIKeyFindRequest\x12\x0e\n\x02id\x18\x01 \x01(\tR\x02id\"K\n UpdateDefaultOrganizationRequest\x12\'\n\x0forganization_id\x18\x01 \x01(\tR\x0eorganizationId\",\n\x0e\x43lientSettings\x12\x1a\n\x08settings\x18\x01 \x01(\x0cR\x08settings\"\xbd\x01\n\x1d\x43reateAutoChargeIntentRequest\x12\'\n\x0forganization_id\x18\x01 \x01(\tR\x0eorganizationId\x12\'\n\x0fmonthly_maximum\x18\x02 \x01(\x04R\x0emonthlyMaximum\x12#\n\rminimum_value\x18\x03 \x01(\x04R\x0cminimumValue\x12%\n\x0e\x61mount_credits\x18\x04 \x01(\x04R\ramountCredits\"V\n\x13\x43reateChargeRequest\x12\x16\n\x06\x61mount\x18\x01 \x01(\x04R\x06\x61mount\x12\'\n\x0forganization_id\x18\x02 \x01(\tR\x0eorganizationId\"v\n\x11GetChargesRequest\x12\'\n\x0forganization_id\x18\x01 \x01(\tR\x0eorganizationId\x12\x1d\n\nrange_from\x18\x02 \x01(\x04R\trangeFrom\x12\x19\n\x08range_to\x18\x03 \x01(\x04R\x07rangeTo\"\xb8\x01\n\x06\x43harge\x12\x0e\n\x02id\x18\x01 \x01(\tR\x02id\x12\x12\n\x04paid\x18\x02 \x01(\x08R\x04paid\x12!\n\x0creceipt_link\x18\x03 \x01(\tR\x0breceiptLink\x12!\n\x0cpayment_link\x18\x04 \x01(\tR\x0bpaymentLink\x12\x1d\n\ncreated_at\x18\x05 \x01(\x04R\tcreatedAt\x12%\n\x0e\x61mount_credits\x18\x06 \x01(\x04R\ramountCredits\"I\n\x07\x43harges\x12>\n\x07\x63harges\x18\x01 \x03(\x0b\x32$.stabilityai.api.dashboard.v1.ChargeR\x07\x63harges\"?\n\x14GetAutoChargeRequest\x12\'\n\x0forganization_id\x18\x01 \x01(\tR\x0eorganizationId\"\xd9\x01\n\x10\x41utoChargeIntent\x12\x0e\n\x02id\x18\x01 \x01(\tR\x02id\x12!\n\x0cpayment_link\x18\x02 \x01(\tR\x0bpaymentLink\x12\x1d\n\ncreated_at\x18\x03 \x01(\x04R\tcreatedAt\x12\'\n\x0fmonthly_maximum\x18\x04 \x01(\x04R\x0emonthlyMaximum\x12#\n\rminimum_value\x18\x05 \x01(\x04R\x0cminimumValue\x12%\n\x0e\x61mount_credits\x18\x06 \x01(\x04R\ramountCredits\"<\n\x15UpdateUserInfoRequest\x12\x19\n\x05\x65mail\x18\x01 \x01(\tH\x00R\x05\x65mail\x88\x01\x01\x42\x08\n\x06_email\"2\n\x18UserPasswordChangeTicket\x12\x16\n\x06ticket\x18\x01 \x01(\tR\x06ticket*9\n\x10OrganizationRole\x12\n\n\x06MEMBER\x10\x00\x12\x0e\n\nACCOUNTANT\x10\x01\x12\t\n\x05OWNER\x10\x02\x32\x9a\x0e\n\x10\x44\x61shboardService\x12W\n\x05GetMe\x12*.stabilityai.api.dashboard.v1.EmptyRequest\x1a\".stabilityai.api.dashboard.v1.User\x12s\n\x0fGetOrganization\x12\x34.stabilityai.api.dashboard.v1.GetOrganizationRequest\x1a*.stabilityai.api.dashboard.v1.Organization\x12\x64\n\nGetMetrics\x12/.stabilityai.api.dashboard.v1.GetMetricsRequest\x1a%.stabilityai.api.dashboard.v1.Metrics\x12\x61\n\x0c\x43reateAPIKey\x12+.stabilityai.api.dashboard.v1.APIKeyRequest\x1a$.stabilityai.api.dashboard.v1.APIKey\x12\x65\n\x0c\x44\x65leteAPIKey\x12/.stabilityai.api.dashboard.v1.APIKeyFindRequest\x1a$.stabilityai.api.dashboard.v1.APIKey\x12\x7f\n\x19UpdateDefaultOrganization\x12>.stabilityai.api.dashboard.v1.UpdateDefaultOrganizationRequest\x1a\".stabilityai.api.dashboard.v1.User\x12m\n\x11GetClientSettings\x12*.stabilityai.api.dashboard.v1.EmptyRequest\x1a,.stabilityai.api.dashboard.v1.ClientSettings\x12o\n\x11SetClientSettings\x12,.stabilityai.api.dashboard.v1.ClientSettings\x1a,.stabilityai.api.dashboard.v1.ClientSettings\x12i\n\x0eUpdateUserInfo\x12\x33.stabilityai.api.dashboard.v1.UpdateUserInfoRequest\x1a\".stabilityai.api.dashboard.v1.User\x12\x80\x01\n\x1a\x43reatePasswordChangeTicket\x12*.stabilityai.api.dashboard.v1.EmptyRequest\x1a\x36.stabilityai.api.dashboard.v1.UserPasswordChangeTicket\x12_\n\rDeleteAccount\x12*.stabilityai.api.dashboard.v1.EmptyRequest\x1a\".stabilityai.api.dashboard.v1.User\x12g\n\x0c\x43reateCharge\x12\x31.stabilityai.api.dashboard.v1.CreateChargeRequest\x1a$.stabilityai.api.dashboard.v1.Charge\x12\x64\n\nGetCharges\x12/.stabilityai.api.dashboard.v1.GetChargesRequest\x1a%.stabilityai.api.dashboard.v1.Charges\x12\x85\x01\n\x16\x43reateAutoChargeIntent\x12;.stabilityai.api.dashboard.v1.CreateAutoChargeIntentRequest\x1a..stabilityai.api.dashboard.v1.AutoChargeIntent\x12\x85\x01\n\x16UpdateAutoChargeIntent\x12;.stabilityai.api.dashboard.v1.CreateAutoChargeIntentRequest\x1a..stabilityai.api.dashboard.v1.AutoChargeIntent\x12y\n\x13GetAutoChargeIntent\x12\x32.stabilityai.api.dashboard.v1.GetAutoChargeRequest\x1a..stabilityai.api.dashboard.v1.AutoChargeIntentB\xaa\x02\n com.stabilityai.api.dashboard.v1B\x0e\x44\x61shboardProtoP\x01Zcgithub.com/stability-ai/api-interfaces/gen/proto/go/stability_api/platform/dashboard/v1;dashboardv1\xa2\x02\x03SAD\xaa\x02\x1cStabilityai.Api.Dashboard.V1\xca\x02\x1cStabilityai\\Api\\Dashboard\\V1\xe2\x02(Stabilityai\\Api\\Dashboard\\V1\\GPBMetadata\xea\x02\x1fStabilityai::Api::Dashboard::V1b\x06proto3') + +_globals = globals() +_builder.BuildMessageAndEnumDescriptors(DESCRIPTOR, _globals) +_builder.BuildTopDescriptorsAndMessages(DESCRIPTOR, 'stability_api.platform.dashboard.v1.dashboard_pb2', _globals) +if _descriptor._USE_C_DESCRIPTORS == False: + + DESCRIPTOR._options = None + DESCRIPTOR._serialized_options = b'\n com.stabilityai.api.dashboard.v1B\016DashboardProtoP\001Zcgithub.com/stability-ai/api-interfaces/gen/proto/go/stability_api/platform/dashboard/v1;dashboardv1\242\002\003SAD\252\002\034Stabilityai.Api.Dashboard.V1\312\002\034Stabilityai\\Api\\Dashboard\\V1\342\002(Stabilityai\\Api\\Dashboard\\V1\\GPBMetadata\352\002\037Stabilityai::Api::Dashboard::V1' + _globals['_ORGANIZATIONROLE']._serialized_start=4011 + _globals['_ORGANIZATIONROLE']._serialized_end=4068 + _globals['_ORGANIZATIONMEMBER']._serialized_start=86 + _globals['_ORGANIZATIONMEMBER']._serialized_end=355 + _globals['_ORGANIZATIONGRANT']._serialized_start=358 + _globals['_ORGANIZATIONGRANT']._serialized_end=511 + _globals['_ORGANIZATIONPAYMENTINFO']._serialized_start=513 + _globals['_ORGANIZATIONPAYMENTINFO']._serialized_end=637 + _globals['_ORGANIZATIONAUTOCHARGE']._serialized_start=639 + _globals['_ORGANIZATIONAUTOCHARGE']._serialized_end=736 + _globals['_ORGANIZATION']._serialized_start=739 + _globals['_ORGANIZATION']._serialized_end=1193 + _globals['_APIKEY']._serialized_start=1195 + _globals['_APIKEY']._serialized_end=1281 + _globals['_USER']._serialized_start=1284 + _globals['_USER']._serialized_end=1658 + _globals['_COSTDATA']._serialized_start=1660 + _globals['_COSTDATA']._serialized_end=1746 + _globals['_USAGEMETRIC']._serialized_start=1749 + _globals['_USAGEMETRIC']._serialized_end=2047 + _globals['_COSTTOTAL']._serialized_start=2049 + _globals['_COSTTOTAL']._serialized_end=2136 + _globals['_TOTALMETRICSDATA']._serialized_start=2139 + _globals['_TOTALMETRICSDATA']._serialized_end=2307 + _globals['_METRICS']._serialized_start=2310 + _globals['_METRICS']._serialized_end=2458 + _globals['_EMPTYREQUEST']._serialized_start=2460 + _globals['_EMPTYREQUEST']._serialized_end=2474 + _globals['_GETORGANIZATIONREQUEST']._serialized_start=2476 + _globals['_GETORGANIZATIONREQUEST']._serialized_end=2516 + _globals['_GETMETRICSREQUEST']._serialized_start=2519 + _globals['_GETMETRICSREQUEST']._serialized_end=2742 + _globals['_APIKEYREQUEST']._serialized_start=2744 + _globals['_APIKEYREQUEST']._serialized_end=2788 + _globals['_APIKEYFINDREQUEST']._serialized_start=2790 + _globals['_APIKEYFINDREQUEST']._serialized_end=2825 + _globals['_UPDATEDEFAULTORGANIZATIONREQUEST']._serialized_start=2827 + _globals['_UPDATEDEFAULTORGANIZATIONREQUEST']._serialized_end=2902 + _globals['_CLIENTSETTINGS']._serialized_start=2904 + _globals['_CLIENTSETTINGS']._serialized_end=2948 + _globals['_CREATEAUTOCHARGEINTENTREQUEST']._serialized_start=2951 + _globals['_CREATEAUTOCHARGEINTENTREQUEST']._serialized_end=3140 + _globals['_CREATECHARGEREQUEST']._serialized_start=3142 + _globals['_CREATECHARGEREQUEST']._serialized_end=3228 + _globals['_GETCHARGESREQUEST']._serialized_start=3230 + _globals['_GETCHARGESREQUEST']._serialized_end=3348 + _globals['_CHARGE']._serialized_start=3351 + _globals['_CHARGE']._serialized_end=3535 + _globals['_CHARGES']._serialized_start=3537 + _globals['_CHARGES']._serialized_end=3610 + _globals['_GETAUTOCHARGEREQUEST']._serialized_start=3612 + _globals['_GETAUTOCHARGEREQUEST']._serialized_end=3675 + _globals['_AUTOCHARGEINTENT']._serialized_start=3678 + _globals['_AUTOCHARGEINTENT']._serialized_end=3895 + _globals['_UPDATEUSERINFOREQUEST']._serialized_start=3897 + _globals['_UPDATEUSERINFOREQUEST']._serialized_end=3957 + _globals['_USERPASSWORDCHANGETICKET']._serialized_start=3959 + _globals['_USERPASSWORDCHANGETICKET']._serialized_end=4009 + _globals['_DASHBOARDSERVICE']._serialized_start=4071 + _globals['_DASHBOARDSERVICE']._serialized_end=5889 +# @@protoc_insertion_point(module_scope) diff --git a/src/stability_api/platform/dashboard/v1/dashboard_pb2.pyi b/src/stability_api/platform/dashboard/v1/dashboard_pb2.pyi new file mode 100644 index 0000000..2b786ca --- /dev/null +++ b/src/stability_api/platform/dashboard/v1/dashboard_pb2.pyi @@ -0,0 +1,288 @@ +from google.protobuf.internal import containers as _containers +from google.protobuf.internal import enum_type_wrapper as _enum_type_wrapper +from google.protobuf import descriptor as _descriptor +from google.protobuf import message as _message +from typing import ClassVar as _ClassVar, Iterable as _Iterable, Mapping as _Mapping, Optional as _Optional, Union as _Union + +DESCRIPTOR: _descriptor.FileDescriptor + +class OrganizationRole(int, metaclass=_enum_type_wrapper.EnumTypeWrapper): + __slots__ = [] + MEMBER: _ClassVar[OrganizationRole] + ACCOUNTANT: _ClassVar[OrganizationRole] + OWNER: _ClassVar[OrganizationRole] +MEMBER: OrganizationRole +ACCOUNTANT: OrganizationRole +OWNER: OrganizationRole + +class OrganizationMember(_message.Message): + __slots__ = ["organization", "user", "role", "is_default"] + ORGANIZATION_FIELD_NUMBER: _ClassVar[int] + USER_FIELD_NUMBER: _ClassVar[int] + ROLE_FIELD_NUMBER: _ClassVar[int] + IS_DEFAULT_FIELD_NUMBER: _ClassVar[int] + organization: Organization + user: User + role: OrganizationRole + is_default: bool + def __init__(self, organization: _Optional[_Union[Organization, _Mapping]] = ..., user: _Optional[_Union[User, _Mapping]] = ..., role: _Optional[_Union[OrganizationRole, str]] = ..., is_default: bool = ...) -> None: ... + +class OrganizationGrant(_message.Message): + __slots__ = ["amount_granted", "amount_used", "expires_at", "granted_at"] + AMOUNT_GRANTED_FIELD_NUMBER: _ClassVar[int] + AMOUNT_USED_FIELD_NUMBER: _ClassVar[int] + EXPIRES_AT_FIELD_NUMBER: _ClassVar[int] + GRANTED_AT_FIELD_NUMBER: _ClassVar[int] + amount_granted: float + amount_used: float + expires_at: int + granted_at: int + def __init__(self, amount_granted: _Optional[float] = ..., amount_used: _Optional[float] = ..., expires_at: _Optional[int] = ..., granted_at: _Optional[int] = ...) -> None: ... + +class OrganizationPaymentInfo(_message.Message): + __slots__ = ["balance", "grants"] + BALANCE_FIELD_NUMBER: _ClassVar[int] + GRANTS_FIELD_NUMBER: _ClassVar[int] + balance: float + grants: _containers.RepeatedCompositeFieldContainer[OrganizationGrant] + def __init__(self, balance: _Optional[float] = ..., grants: _Optional[_Iterable[_Union[OrganizationGrant, _Mapping]]] = ...) -> None: ... + +class OrganizationAutoCharge(_message.Message): + __slots__ = ["enabled", "id", "created_at"] + ENABLED_FIELD_NUMBER: _ClassVar[int] + ID_FIELD_NUMBER: _ClassVar[int] + CREATED_AT_FIELD_NUMBER: _ClassVar[int] + enabled: bool + id: str + created_at: int + def __init__(self, enabled: bool = ..., id: _Optional[str] = ..., created_at: _Optional[int] = ...) -> None: ... + +class Organization(_message.Message): + __slots__ = ["id", "name", "description", "members", "payment_info", "stripe_customer_id", "auto_charge"] + ID_FIELD_NUMBER: _ClassVar[int] + NAME_FIELD_NUMBER: _ClassVar[int] + DESCRIPTION_FIELD_NUMBER: _ClassVar[int] + MEMBERS_FIELD_NUMBER: _ClassVar[int] + PAYMENT_INFO_FIELD_NUMBER: _ClassVar[int] + STRIPE_CUSTOMER_ID_FIELD_NUMBER: _ClassVar[int] + AUTO_CHARGE_FIELD_NUMBER: _ClassVar[int] + id: str + name: str + description: str + members: _containers.RepeatedCompositeFieldContainer[OrganizationMember] + payment_info: OrganizationPaymentInfo + stripe_customer_id: str + auto_charge: OrganizationAutoCharge + def __init__(self, id: _Optional[str] = ..., name: _Optional[str] = ..., description: _Optional[str] = ..., members: _Optional[_Iterable[_Union[OrganizationMember, _Mapping]]] = ..., payment_info: _Optional[_Union[OrganizationPaymentInfo, _Mapping]] = ..., stripe_customer_id: _Optional[str] = ..., auto_charge: _Optional[_Union[OrganizationAutoCharge, _Mapping]] = ...) -> None: ... + +class APIKey(_message.Message): + __slots__ = ["key", "is_secret", "created_at"] + KEY_FIELD_NUMBER: _ClassVar[int] + IS_SECRET_FIELD_NUMBER: _ClassVar[int] + CREATED_AT_FIELD_NUMBER: _ClassVar[int] + key: str + is_secret: bool + created_at: int + def __init__(self, key: _Optional[str] = ..., is_secret: bool = ..., created_at: _Optional[int] = ...) -> None: ... + +class User(_message.Message): + __slots__ = ["id", "auth_id", "profile_picture", "email", "organizations", "api_keys", "created_at", "email_verified"] + ID_FIELD_NUMBER: _ClassVar[int] + AUTH_ID_FIELD_NUMBER: _ClassVar[int] + PROFILE_PICTURE_FIELD_NUMBER: _ClassVar[int] + EMAIL_FIELD_NUMBER: _ClassVar[int] + ORGANIZATIONS_FIELD_NUMBER: _ClassVar[int] + API_KEYS_FIELD_NUMBER: _ClassVar[int] + CREATED_AT_FIELD_NUMBER: _ClassVar[int] + EMAIL_VERIFIED_FIELD_NUMBER: _ClassVar[int] + id: str + auth_id: str + profile_picture: str + email: str + organizations: _containers.RepeatedCompositeFieldContainer[OrganizationMember] + api_keys: _containers.RepeatedCompositeFieldContainer[APIKey] + created_at: int + email_verified: bool + def __init__(self, id: _Optional[str] = ..., auth_id: _Optional[str] = ..., profile_picture: _Optional[str] = ..., email: _Optional[str] = ..., organizations: _Optional[_Iterable[_Union[OrganizationMember, _Mapping]]] = ..., api_keys: _Optional[_Iterable[_Union[APIKey, _Mapping]]] = ..., created_at: _Optional[int] = ..., email_verified: bool = ...) -> None: ... + +class CostData(_message.Message): + __slots__ = ["amount_tokens", "amount_credits"] + AMOUNT_TOKENS_FIELD_NUMBER: _ClassVar[int] + AMOUNT_CREDITS_FIELD_NUMBER: _ClassVar[int] + amount_tokens: int + amount_credits: float + def __init__(self, amount_tokens: _Optional[int] = ..., amount_credits: _Optional[float] = ...) -> None: ... + +class UsageMetric(_message.Message): + __slots__ = ["operation", "engine", "input_cost", "output_cost", "user", "aggregation_timestamp"] + OPERATION_FIELD_NUMBER: _ClassVar[int] + ENGINE_FIELD_NUMBER: _ClassVar[int] + INPUT_COST_FIELD_NUMBER: _ClassVar[int] + OUTPUT_COST_FIELD_NUMBER: _ClassVar[int] + USER_FIELD_NUMBER: _ClassVar[int] + AGGREGATION_TIMESTAMP_FIELD_NUMBER: _ClassVar[int] + operation: str + engine: str + input_cost: CostData + output_cost: CostData + user: str + aggregation_timestamp: int + def __init__(self, operation: _Optional[str] = ..., engine: _Optional[str] = ..., input_cost: _Optional[_Union[CostData, _Mapping]] = ..., output_cost: _Optional[_Union[CostData, _Mapping]] = ..., user: _Optional[str] = ..., aggregation_timestamp: _Optional[int] = ...) -> None: ... + +class CostTotal(_message.Message): + __slots__ = ["amount_tokens", "amount_credits"] + AMOUNT_TOKENS_FIELD_NUMBER: _ClassVar[int] + AMOUNT_CREDITS_FIELD_NUMBER: _ClassVar[int] + amount_tokens: int + amount_credits: float + def __init__(self, amount_tokens: _Optional[int] = ..., amount_credits: _Optional[float] = ...) -> None: ... + +class TotalMetricsData(_message.Message): + __slots__ = ["input_total", "output_total"] + INPUT_TOTAL_FIELD_NUMBER: _ClassVar[int] + OUTPUT_TOTAL_FIELD_NUMBER: _ClassVar[int] + input_total: CostTotal + output_total: CostTotal + def __init__(self, input_total: _Optional[_Union[CostTotal, _Mapping]] = ..., output_total: _Optional[_Union[CostTotal, _Mapping]] = ...) -> None: ... + +class Metrics(_message.Message): + __slots__ = ["metrics", "total"] + METRICS_FIELD_NUMBER: _ClassVar[int] + TOTAL_FIELD_NUMBER: _ClassVar[int] + metrics: _containers.RepeatedCompositeFieldContainer[UsageMetric] + total: TotalMetricsData + def __init__(self, metrics: _Optional[_Iterable[_Union[UsageMetric, _Mapping]]] = ..., total: _Optional[_Union[TotalMetricsData, _Mapping]] = ...) -> None: ... + +class EmptyRequest(_message.Message): + __slots__ = [] + def __init__(self) -> None: ... + +class GetOrganizationRequest(_message.Message): + __slots__ = ["id"] + ID_FIELD_NUMBER: _ClassVar[int] + id: str + def __init__(self, id: _Optional[str] = ...) -> None: ... + +class GetMetricsRequest(_message.Message): + __slots__ = ["organization_id", "user_id", "range_from", "range_to", "include_per_request_metrics"] + ORGANIZATION_ID_FIELD_NUMBER: _ClassVar[int] + USER_ID_FIELD_NUMBER: _ClassVar[int] + RANGE_FROM_FIELD_NUMBER: _ClassVar[int] + RANGE_TO_FIELD_NUMBER: _ClassVar[int] + INCLUDE_PER_REQUEST_METRICS_FIELD_NUMBER: _ClassVar[int] + organization_id: str + user_id: str + range_from: int + range_to: int + include_per_request_metrics: bool + def __init__(self, organization_id: _Optional[str] = ..., user_id: _Optional[str] = ..., range_from: _Optional[int] = ..., range_to: _Optional[int] = ..., include_per_request_metrics: bool = ...) -> None: ... + +class APIKeyRequest(_message.Message): + __slots__ = ["is_secret"] + IS_SECRET_FIELD_NUMBER: _ClassVar[int] + is_secret: bool + def __init__(self, is_secret: bool = ...) -> None: ... + +class APIKeyFindRequest(_message.Message): + __slots__ = ["id"] + ID_FIELD_NUMBER: _ClassVar[int] + id: str + def __init__(self, id: _Optional[str] = ...) -> None: ... + +class UpdateDefaultOrganizationRequest(_message.Message): + __slots__ = ["organization_id"] + ORGANIZATION_ID_FIELD_NUMBER: _ClassVar[int] + organization_id: str + def __init__(self, organization_id: _Optional[str] = ...) -> None: ... + +class ClientSettings(_message.Message): + __slots__ = ["settings"] + SETTINGS_FIELD_NUMBER: _ClassVar[int] + settings: bytes + def __init__(self, settings: _Optional[bytes] = ...) -> None: ... + +class CreateAutoChargeIntentRequest(_message.Message): + __slots__ = ["organization_id", "monthly_maximum", "minimum_value", "amount_credits"] + ORGANIZATION_ID_FIELD_NUMBER: _ClassVar[int] + MONTHLY_MAXIMUM_FIELD_NUMBER: _ClassVar[int] + MINIMUM_VALUE_FIELD_NUMBER: _ClassVar[int] + AMOUNT_CREDITS_FIELD_NUMBER: _ClassVar[int] + organization_id: str + monthly_maximum: int + minimum_value: int + amount_credits: int + def __init__(self, organization_id: _Optional[str] = ..., monthly_maximum: _Optional[int] = ..., minimum_value: _Optional[int] = ..., amount_credits: _Optional[int] = ...) -> None: ... + +class CreateChargeRequest(_message.Message): + __slots__ = ["amount", "organization_id"] + AMOUNT_FIELD_NUMBER: _ClassVar[int] + ORGANIZATION_ID_FIELD_NUMBER: _ClassVar[int] + amount: int + organization_id: str + def __init__(self, amount: _Optional[int] = ..., organization_id: _Optional[str] = ...) -> None: ... + +class GetChargesRequest(_message.Message): + __slots__ = ["organization_id", "range_from", "range_to"] + ORGANIZATION_ID_FIELD_NUMBER: _ClassVar[int] + RANGE_FROM_FIELD_NUMBER: _ClassVar[int] + RANGE_TO_FIELD_NUMBER: _ClassVar[int] + organization_id: str + range_from: int + range_to: int + def __init__(self, organization_id: _Optional[str] = ..., range_from: _Optional[int] = ..., range_to: _Optional[int] = ...) -> None: ... + +class Charge(_message.Message): + __slots__ = ["id", "paid", "receipt_link", "payment_link", "created_at", "amount_credits"] + ID_FIELD_NUMBER: _ClassVar[int] + PAID_FIELD_NUMBER: _ClassVar[int] + RECEIPT_LINK_FIELD_NUMBER: _ClassVar[int] + PAYMENT_LINK_FIELD_NUMBER: _ClassVar[int] + CREATED_AT_FIELD_NUMBER: _ClassVar[int] + AMOUNT_CREDITS_FIELD_NUMBER: _ClassVar[int] + id: str + paid: bool + receipt_link: str + payment_link: str + created_at: int + amount_credits: int + def __init__(self, id: _Optional[str] = ..., paid: bool = ..., receipt_link: _Optional[str] = ..., payment_link: _Optional[str] = ..., created_at: _Optional[int] = ..., amount_credits: _Optional[int] = ...) -> None: ... + +class Charges(_message.Message): + __slots__ = ["charges"] + CHARGES_FIELD_NUMBER: _ClassVar[int] + charges: _containers.RepeatedCompositeFieldContainer[Charge] + def __init__(self, charges: _Optional[_Iterable[_Union[Charge, _Mapping]]] = ...) -> None: ... + +class GetAutoChargeRequest(_message.Message): + __slots__ = ["organization_id"] + ORGANIZATION_ID_FIELD_NUMBER: _ClassVar[int] + organization_id: str + def __init__(self, organization_id: _Optional[str] = ...) -> None: ... + +class AutoChargeIntent(_message.Message): + __slots__ = ["id", "payment_link", "created_at", "monthly_maximum", "minimum_value", "amount_credits"] + ID_FIELD_NUMBER: _ClassVar[int] + PAYMENT_LINK_FIELD_NUMBER: _ClassVar[int] + CREATED_AT_FIELD_NUMBER: _ClassVar[int] + MONTHLY_MAXIMUM_FIELD_NUMBER: _ClassVar[int] + MINIMUM_VALUE_FIELD_NUMBER: _ClassVar[int] + AMOUNT_CREDITS_FIELD_NUMBER: _ClassVar[int] + id: str + payment_link: str + created_at: int + monthly_maximum: int + minimum_value: int + amount_credits: int + def __init__(self, id: _Optional[str] = ..., payment_link: _Optional[str] = ..., created_at: _Optional[int] = ..., monthly_maximum: _Optional[int] = ..., minimum_value: _Optional[int] = ..., amount_credits: _Optional[int] = ...) -> None: ... + +class UpdateUserInfoRequest(_message.Message): + __slots__ = ["email"] + EMAIL_FIELD_NUMBER: _ClassVar[int] + email: str + def __init__(self, email: _Optional[str] = ...) -> None: ... + +class UserPasswordChangeTicket(_message.Message): + __slots__ = ["ticket"] + TICKET_FIELD_NUMBER: _ClassVar[int] + ticket: str + def __init__(self, ticket: _Optional[str] = ...) -> None: ... diff --git a/src/stability_api/platform/dashboard/v1/dashboard_pb2_grpc.py b/src/stability_api/platform/dashboard/v1/dashboard_pb2_grpc.py new file mode 100644 index 0000000..a9bf65b --- /dev/null +++ b/src/stability_api/platform/dashboard/v1/dashboard_pb2_grpc.py @@ -0,0 +1,565 @@ +# Generated by the gRPC Python protocol compiler plugin. DO NOT EDIT! +"""Client and server classes corresponding to protobuf-defined services.""" +import grpc + +from stability_api.platform.dashboard.v1 import dashboard_pb2 as stability__api_dot_platform_dot_dashboard_dot_v1_dot_dashboard__pb2 + + +class DashboardServiceStub(object): + """Missing associated documentation comment in .proto file.""" + + def __init__(self, channel): + """Constructor. + + Args: + channel: A grpc.Channel. + """ + self.GetMe = channel.unary_unary( + '/stabilityai.api.dashboard.v1.DashboardService/GetMe', + request_serializer=stability__api_dot_platform_dot_dashboard_dot_v1_dot_dashboard__pb2.EmptyRequest.SerializeToString, + response_deserializer=stability__api_dot_platform_dot_dashboard_dot_v1_dot_dashboard__pb2.User.FromString, + ) + self.GetOrganization = channel.unary_unary( + '/stabilityai.api.dashboard.v1.DashboardService/GetOrganization', + request_serializer=stability__api_dot_platform_dot_dashboard_dot_v1_dot_dashboard__pb2.GetOrganizationRequest.SerializeToString, + response_deserializer=stability__api_dot_platform_dot_dashboard_dot_v1_dot_dashboard__pb2.Organization.FromString, + ) + self.GetMetrics = channel.unary_unary( + '/stabilityai.api.dashboard.v1.DashboardService/GetMetrics', + request_serializer=stability__api_dot_platform_dot_dashboard_dot_v1_dot_dashboard__pb2.GetMetricsRequest.SerializeToString, + response_deserializer=stability__api_dot_platform_dot_dashboard_dot_v1_dot_dashboard__pb2.Metrics.FromString, + ) + self.CreateAPIKey = channel.unary_unary( + '/stabilityai.api.dashboard.v1.DashboardService/CreateAPIKey', + request_serializer=stability__api_dot_platform_dot_dashboard_dot_v1_dot_dashboard__pb2.APIKeyRequest.SerializeToString, + response_deserializer=stability__api_dot_platform_dot_dashboard_dot_v1_dot_dashboard__pb2.APIKey.FromString, + ) + self.DeleteAPIKey = channel.unary_unary( + '/stabilityai.api.dashboard.v1.DashboardService/DeleteAPIKey', + request_serializer=stability__api_dot_platform_dot_dashboard_dot_v1_dot_dashboard__pb2.APIKeyFindRequest.SerializeToString, + response_deserializer=stability__api_dot_platform_dot_dashboard_dot_v1_dot_dashboard__pb2.APIKey.FromString, + ) + self.UpdateDefaultOrganization = channel.unary_unary( + '/stabilityai.api.dashboard.v1.DashboardService/UpdateDefaultOrganization', + request_serializer=stability__api_dot_platform_dot_dashboard_dot_v1_dot_dashboard__pb2.UpdateDefaultOrganizationRequest.SerializeToString, + response_deserializer=stability__api_dot_platform_dot_dashboard_dot_v1_dot_dashboard__pb2.User.FromString, + ) + self.GetClientSettings = channel.unary_unary( + '/stabilityai.api.dashboard.v1.DashboardService/GetClientSettings', + request_serializer=stability__api_dot_platform_dot_dashboard_dot_v1_dot_dashboard__pb2.EmptyRequest.SerializeToString, + response_deserializer=stability__api_dot_platform_dot_dashboard_dot_v1_dot_dashboard__pb2.ClientSettings.FromString, + ) + self.SetClientSettings = channel.unary_unary( + '/stabilityai.api.dashboard.v1.DashboardService/SetClientSettings', + request_serializer=stability__api_dot_platform_dot_dashboard_dot_v1_dot_dashboard__pb2.ClientSettings.SerializeToString, + response_deserializer=stability__api_dot_platform_dot_dashboard_dot_v1_dot_dashboard__pb2.ClientSettings.FromString, + ) + self.UpdateUserInfo = channel.unary_unary( + '/stabilityai.api.dashboard.v1.DashboardService/UpdateUserInfo', + request_serializer=stability__api_dot_platform_dot_dashboard_dot_v1_dot_dashboard__pb2.UpdateUserInfoRequest.SerializeToString, + response_deserializer=stability__api_dot_platform_dot_dashboard_dot_v1_dot_dashboard__pb2.User.FromString, + ) + self.CreatePasswordChangeTicket = channel.unary_unary( + '/stabilityai.api.dashboard.v1.DashboardService/CreatePasswordChangeTicket', + request_serializer=stability__api_dot_platform_dot_dashboard_dot_v1_dot_dashboard__pb2.EmptyRequest.SerializeToString, + response_deserializer=stability__api_dot_platform_dot_dashboard_dot_v1_dot_dashboard__pb2.UserPasswordChangeTicket.FromString, + ) + self.DeleteAccount = channel.unary_unary( + '/stabilityai.api.dashboard.v1.DashboardService/DeleteAccount', + request_serializer=stability__api_dot_platform_dot_dashboard_dot_v1_dot_dashboard__pb2.EmptyRequest.SerializeToString, + response_deserializer=stability__api_dot_platform_dot_dashboard_dot_v1_dot_dashboard__pb2.User.FromString, + ) + self.CreateCharge = channel.unary_unary( + '/stabilityai.api.dashboard.v1.DashboardService/CreateCharge', + request_serializer=stability__api_dot_platform_dot_dashboard_dot_v1_dot_dashboard__pb2.CreateChargeRequest.SerializeToString, + response_deserializer=stability__api_dot_platform_dot_dashboard_dot_v1_dot_dashboard__pb2.Charge.FromString, + ) + self.GetCharges = channel.unary_unary( + '/stabilityai.api.dashboard.v1.DashboardService/GetCharges', + request_serializer=stability__api_dot_platform_dot_dashboard_dot_v1_dot_dashboard__pb2.GetChargesRequest.SerializeToString, + response_deserializer=stability__api_dot_platform_dot_dashboard_dot_v1_dot_dashboard__pb2.Charges.FromString, + ) + self.CreateAutoChargeIntent = channel.unary_unary( + '/stabilityai.api.dashboard.v1.DashboardService/CreateAutoChargeIntent', + request_serializer=stability__api_dot_platform_dot_dashboard_dot_v1_dot_dashboard__pb2.CreateAutoChargeIntentRequest.SerializeToString, + response_deserializer=stability__api_dot_platform_dot_dashboard_dot_v1_dot_dashboard__pb2.AutoChargeIntent.FromString, + ) + self.UpdateAutoChargeIntent = channel.unary_unary( + '/stabilityai.api.dashboard.v1.DashboardService/UpdateAutoChargeIntent', + request_serializer=stability__api_dot_platform_dot_dashboard_dot_v1_dot_dashboard__pb2.CreateAutoChargeIntentRequest.SerializeToString, + response_deserializer=stability__api_dot_platform_dot_dashboard_dot_v1_dot_dashboard__pb2.AutoChargeIntent.FromString, + ) + self.GetAutoChargeIntent = channel.unary_unary( + '/stabilityai.api.dashboard.v1.DashboardService/GetAutoChargeIntent', + request_serializer=stability__api_dot_platform_dot_dashboard_dot_v1_dot_dashboard__pb2.GetAutoChargeRequest.SerializeToString, + response_deserializer=stability__api_dot_platform_dot_dashboard_dot_v1_dot_dashboard__pb2.AutoChargeIntent.FromString, + ) + + +class DashboardServiceServicer(object): + """Missing associated documentation comment in .proto file.""" + + def GetMe(self, request, context): + """Get info + """ + context.set_code(grpc.StatusCode.UNIMPLEMENTED) + context.set_details('Method not implemented!') + raise NotImplementedError('Method not implemented!') + + def GetOrganization(self, request, context): + """Missing associated documentation comment in .proto file.""" + context.set_code(grpc.StatusCode.UNIMPLEMENTED) + context.set_details('Method not implemented!') + raise NotImplementedError('Method not implemented!') + + def GetMetrics(self, request, context): + """Missing associated documentation comment in .proto file.""" + context.set_code(grpc.StatusCode.UNIMPLEMENTED) + context.set_details('Method not implemented!') + raise NotImplementedError('Method not implemented!') + + def CreateAPIKey(self, request, context): + """API key management + """ + context.set_code(grpc.StatusCode.UNIMPLEMENTED) + context.set_details('Method not implemented!') + raise NotImplementedError('Method not implemented!') + + def DeleteAPIKey(self, request, context): + """Missing associated documentation comment in .proto file.""" + context.set_code(grpc.StatusCode.UNIMPLEMENTED) + context.set_details('Method not implemented!') + raise NotImplementedError('Method not implemented!') + + def UpdateDefaultOrganization(self, request, context): + """User settings + """ + context.set_code(grpc.StatusCode.UNIMPLEMENTED) + context.set_details('Method not implemented!') + raise NotImplementedError('Method not implemented!') + + def GetClientSettings(self, request, context): + """Missing associated documentation comment in .proto file.""" + context.set_code(grpc.StatusCode.UNIMPLEMENTED) + context.set_details('Method not implemented!') + raise NotImplementedError('Method not implemented!') + + def SetClientSettings(self, request, context): + """Missing associated documentation comment in .proto file.""" + context.set_code(grpc.StatusCode.UNIMPLEMENTED) + context.set_details('Method not implemented!') + raise NotImplementedError('Method not implemented!') + + def UpdateUserInfo(self, request, context): + """Missing associated documentation comment in .proto file.""" + context.set_code(grpc.StatusCode.UNIMPLEMENTED) + context.set_details('Method not implemented!') + raise NotImplementedError('Method not implemented!') + + def CreatePasswordChangeTicket(self, request, context): + """Missing associated documentation comment in .proto file.""" + context.set_code(grpc.StatusCode.UNIMPLEMENTED) + context.set_details('Method not implemented!') + raise NotImplementedError('Method not implemented!') + + def DeleteAccount(self, request, context): + """Missing associated documentation comment in .proto file.""" + context.set_code(grpc.StatusCode.UNIMPLEMENTED) + context.set_details('Method not implemented!') + raise NotImplementedError('Method not implemented!') + + def CreateCharge(self, request, context): + """Payment functions + """ + context.set_code(grpc.StatusCode.UNIMPLEMENTED) + context.set_details('Method not implemented!') + raise NotImplementedError('Method not implemented!') + + def GetCharges(self, request, context): + """Missing associated documentation comment in .proto file.""" + context.set_code(grpc.StatusCode.UNIMPLEMENTED) + context.set_details('Method not implemented!') + raise NotImplementedError('Method not implemented!') + + def CreateAutoChargeIntent(self, request, context): + """Missing associated documentation comment in .proto file.""" + context.set_code(grpc.StatusCode.UNIMPLEMENTED) + context.set_details('Method not implemented!') + raise NotImplementedError('Method not implemented!') + + def UpdateAutoChargeIntent(self, request, context): + """Missing associated documentation comment in .proto file.""" + context.set_code(grpc.StatusCode.UNIMPLEMENTED) + context.set_details('Method not implemented!') + raise NotImplementedError('Method not implemented!') + + def GetAutoChargeIntent(self, request, context): + """Missing associated documentation comment in .proto file.""" + context.set_code(grpc.StatusCode.UNIMPLEMENTED) + context.set_details('Method not implemented!') + raise NotImplementedError('Method not implemented!') + + +def add_DashboardServiceServicer_to_server(servicer, server): + rpc_method_handlers = { + 'GetMe': grpc.unary_unary_rpc_method_handler( + servicer.GetMe, + request_deserializer=stability__api_dot_platform_dot_dashboard_dot_v1_dot_dashboard__pb2.EmptyRequest.FromString, + response_serializer=stability__api_dot_platform_dot_dashboard_dot_v1_dot_dashboard__pb2.User.SerializeToString, + ), + 'GetOrganization': grpc.unary_unary_rpc_method_handler( + servicer.GetOrganization, + request_deserializer=stability__api_dot_platform_dot_dashboard_dot_v1_dot_dashboard__pb2.GetOrganizationRequest.FromString, + response_serializer=stability__api_dot_platform_dot_dashboard_dot_v1_dot_dashboard__pb2.Organization.SerializeToString, + ), + 'GetMetrics': grpc.unary_unary_rpc_method_handler( + servicer.GetMetrics, + request_deserializer=stability__api_dot_platform_dot_dashboard_dot_v1_dot_dashboard__pb2.GetMetricsRequest.FromString, + response_serializer=stability__api_dot_platform_dot_dashboard_dot_v1_dot_dashboard__pb2.Metrics.SerializeToString, + ), + 'CreateAPIKey': grpc.unary_unary_rpc_method_handler( + servicer.CreateAPIKey, + request_deserializer=stability__api_dot_platform_dot_dashboard_dot_v1_dot_dashboard__pb2.APIKeyRequest.FromString, + response_serializer=stability__api_dot_platform_dot_dashboard_dot_v1_dot_dashboard__pb2.APIKey.SerializeToString, + ), + 'DeleteAPIKey': grpc.unary_unary_rpc_method_handler( + servicer.DeleteAPIKey, + request_deserializer=stability__api_dot_platform_dot_dashboard_dot_v1_dot_dashboard__pb2.APIKeyFindRequest.FromString, + response_serializer=stability__api_dot_platform_dot_dashboard_dot_v1_dot_dashboard__pb2.APIKey.SerializeToString, + ), + 'UpdateDefaultOrganization': grpc.unary_unary_rpc_method_handler( + servicer.UpdateDefaultOrganization, + request_deserializer=stability__api_dot_platform_dot_dashboard_dot_v1_dot_dashboard__pb2.UpdateDefaultOrganizationRequest.FromString, + response_serializer=stability__api_dot_platform_dot_dashboard_dot_v1_dot_dashboard__pb2.User.SerializeToString, + ), + 'GetClientSettings': grpc.unary_unary_rpc_method_handler( + servicer.GetClientSettings, + request_deserializer=stability__api_dot_platform_dot_dashboard_dot_v1_dot_dashboard__pb2.EmptyRequest.FromString, + response_serializer=stability__api_dot_platform_dot_dashboard_dot_v1_dot_dashboard__pb2.ClientSettings.SerializeToString, + ), + 'SetClientSettings': grpc.unary_unary_rpc_method_handler( + servicer.SetClientSettings, + request_deserializer=stability__api_dot_platform_dot_dashboard_dot_v1_dot_dashboard__pb2.ClientSettings.FromString, + response_serializer=stability__api_dot_platform_dot_dashboard_dot_v1_dot_dashboard__pb2.ClientSettings.SerializeToString, + ), + 'UpdateUserInfo': grpc.unary_unary_rpc_method_handler( + servicer.UpdateUserInfo, + request_deserializer=stability__api_dot_platform_dot_dashboard_dot_v1_dot_dashboard__pb2.UpdateUserInfoRequest.FromString, + response_serializer=stability__api_dot_platform_dot_dashboard_dot_v1_dot_dashboard__pb2.User.SerializeToString, + ), + 'CreatePasswordChangeTicket': grpc.unary_unary_rpc_method_handler( + servicer.CreatePasswordChangeTicket, + request_deserializer=stability__api_dot_platform_dot_dashboard_dot_v1_dot_dashboard__pb2.EmptyRequest.FromString, + response_serializer=stability__api_dot_platform_dot_dashboard_dot_v1_dot_dashboard__pb2.UserPasswordChangeTicket.SerializeToString, + ), + 'DeleteAccount': grpc.unary_unary_rpc_method_handler( + servicer.DeleteAccount, + request_deserializer=stability__api_dot_platform_dot_dashboard_dot_v1_dot_dashboard__pb2.EmptyRequest.FromString, + response_serializer=stability__api_dot_platform_dot_dashboard_dot_v1_dot_dashboard__pb2.User.SerializeToString, + ), + 'CreateCharge': grpc.unary_unary_rpc_method_handler( + servicer.CreateCharge, + request_deserializer=stability__api_dot_platform_dot_dashboard_dot_v1_dot_dashboard__pb2.CreateChargeRequest.FromString, + response_serializer=stability__api_dot_platform_dot_dashboard_dot_v1_dot_dashboard__pb2.Charge.SerializeToString, + ), + 'GetCharges': grpc.unary_unary_rpc_method_handler( + servicer.GetCharges, + request_deserializer=stability__api_dot_platform_dot_dashboard_dot_v1_dot_dashboard__pb2.GetChargesRequest.FromString, + response_serializer=stability__api_dot_platform_dot_dashboard_dot_v1_dot_dashboard__pb2.Charges.SerializeToString, + ), + 'CreateAutoChargeIntent': grpc.unary_unary_rpc_method_handler( + servicer.CreateAutoChargeIntent, + request_deserializer=stability__api_dot_platform_dot_dashboard_dot_v1_dot_dashboard__pb2.CreateAutoChargeIntentRequest.FromString, + response_serializer=stability__api_dot_platform_dot_dashboard_dot_v1_dot_dashboard__pb2.AutoChargeIntent.SerializeToString, + ), + 'UpdateAutoChargeIntent': grpc.unary_unary_rpc_method_handler( + servicer.UpdateAutoChargeIntent, + request_deserializer=stability__api_dot_platform_dot_dashboard_dot_v1_dot_dashboard__pb2.CreateAutoChargeIntentRequest.FromString, + response_serializer=stability__api_dot_platform_dot_dashboard_dot_v1_dot_dashboard__pb2.AutoChargeIntent.SerializeToString, + ), + 'GetAutoChargeIntent': grpc.unary_unary_rpc_method_handler( + servicer.GetAutoChargeIntent, + request_deserializer=stability__api_dot_platform_dot_dashboard_dot_v1_dot_dashboard__pb2.GetAutoChargeRequest.FromString, + response_serializer=stability__api_dot_platform_dot_dashboard_dot_v1_dot_dashboard__pb2.AutoChargeIntent.SerializeToString, + ), + } + generic_handler = grpc.method_handlers_generic_handler( + 'stabilityai.api.dashboard.v1.DashboardService', rpc_method_handlers) + server.add_generic_rpc_handlers((generic_handler,)) + + + # This class is part of an EXPERIMENTAL API. +class DashboardService(object): + """Missing associated documentation comment in .proto file.""" + + @staticmethod + def GetMe(request, + target, + options=(), + channel_credentials=None, + call_credentials=None, + insecure=False, + compression=None, + wait_for_ready=None, + timeout=None, + metadata=None): + return grpc.experimental.unary_unary(request, target, '/stabilityai.api.dashboard.v1.DashboardService/GetMe', + stability__api_dot_platform_dot_dashboard_dot_v1_dot_dashboard__pb2.EmptyRequest.SerializeToString, + stability__api_dot_platform_dot_dashboard_dot_v1_dot_dashboard__pb2.User.FromString, + options, channel_credentials, + insecure, call_credentials, compression, wait_for_ready, timeout, metadata) + + @staticmethod + def GetOrganization(request, + target, + options=(), + channel_credentials=None, + call_credentials=None, + insecure=False, + compression=None, + wait_for_ready=None, + timeout=None, + metadata=None): + return grpc.experimental.unary_unary(request, target, '/stabilityai.api.dashboard.v1.DashboardService/GetOrganization', + stability__api_dot_platform_dot_dashboard_dot_v1_dot_dashboard__pb2.GetOrganizationRequest.SerializeToString, + stability__api_dot_platform_dot_dashboard_dot_v1_dot_dashboard__pb2.Organization.FromString, + options, channel_credentials, + insecure, call_credentials, compression, wait_for_ready, timeout, metadata) + + @staticmethod + def GetMetrics(request, + target, + options=(), + channel_credentials=None, + call_credentials=None, + insecure=False, + compression=None, + wait_for_ready=None, + timeout=None, + metadata=None): + return grpc.experimental.unary_unary(request, target, '/stabilityai.api.dashboard.v1.DashboardService/GetMetrics', + stability__api_dot_platform_dot_dashboard_dot_v1_dot_dashboard__pb2.GetMetricsRequest.SerializeToString, + stability__api_dot_platform_dot_dashboard_dot_v1_dot_dashboard__pb2.Metrics.FromString, + options, channel_credentials, + insecure, call_credentials, compression, wait_for_ready, timeout, metadata) + + @staticmethod + def CreateAPIKey(request, + target, + options=(), + channel_credentials=None, + call_credentials=None, + insecure=False, + compression=None, + wait_for_ready=None, + timeout=None, + metadata=None): + return grpc.experimental.unary_unary(request, target, '/stabilityai.api.dashboard.v1.DashboardService/CreateAPIKey', + stability__api_dot_platform_dot_dashboard_dot_v1_dot_dashboard__pb2.APIKeyRequest.SerializeToString, + stability__api_dot_platform_dot_dashboard_dot_v1_dot_dashboard__pb2.APIKey.FromString, + options, channel_credentials, + insecure, call_credentials, compression, wait_for_ready, timeout, metadata) + + @staticmethod + def DeleteAPIKey(request, + target, + options=(), + channel_credentials=None, + call_credentials=None, + insecure=False, + compression=None, + wait_for_ready=None, + timeout=None, + metadata=None): + return grpc.experimental.unary_unary(request, target, '/stabilityai.api.dashboard.v1.DashboardService/DeleteAPIKey', + stability__api_dot_platform_dot_dashboard_dot_v1_dot_dashboard__pb2.APIKeyFindRequest.SerializeToString, + stability__api_dot_platform_dot_dashboard_dot_v1_dot_dashboard__pb2.APIKey.FromString, + options, channel_credentials, + insecure, call_credentials, compression, wait_for_ready, timeout, metadata) + + @staticmethod + def UpdateDefaultOrganization(request, + target, + options=(), + channel_credentials=None, + call_credentials=None, + insecure=False, + compression=None, + wait_for_ready=None, + timeout=None, + metadata=None): + return grpc.experimental.unary_unary(request, target, '/stabilityai.api.dashboard.v1.DashboardService/UpdateDefaultOrganization', + stability__api_dot_platform_dot_dashboard_dot_v1_dot_dashboard__pb2.UpdateDefaultOrganizationRequest.SerializeToString, + stability__api_dot_platform_dot_dashboard_dot_v1_dot_dashboard__pb2.User.FromString, + options, channel_credentials, + insecure, call_credentials, compression, wait_for_ready, timeout, metadata) + + @staticmethod + def GetClientSettings(request, + target, + options=(), + channel_credentials=None, + call_credentials=None, + insecure=False, + compression=None, + wait_for_ready=None, + timeout=None, + metadata=None): + return grpc.experimental.unary_unary(request, target, '/stabilityai.api.dashboard.v1.DashboardService/GetClientSettings', + stability__api_dot_platform_dot_dashboard_dot_v1_dot_dashboard__pb2.EmptyRequest.SerializeToString, + stability__api_dot_platform_dot_dashboard_dot_v1_dot_dashboard__pb2.ClientSettings.FromString, + options, channel_credentials, + insecure, call_credentials, compression, wait_for_ready, timeout, metadata) + + @staticmethod + def SetClientSettings(request, + target, + options=(), + channel_credentials=None, + call_credentials=None, + insecure=False, + compression=None, + wait_for_ready=None, + timeout=None, + metadata=None): + return grpc.experimental.unary_unary(request, target, '/stabilityai.api.dashboard.v1.DashboardService/SetClientSettings', + stability__api_dot_platform_dot_dashboard_dot_v1_dot_dashboard__pb2.ClientSettings.SerializeToString, + stability__api_dot_platform_dot_dashboard_dot_v1_dot_dashboard__pb2.ClientSettings.FromString, + options, channel_credentials, + insecure, call_credentials, compression, wait_for_ready, timeout, metadata) + + @staticmethod + def UpdateUserInfo(request, + target, + options=(), + channel_credentials=None, + call_credentials=None, + insecure=False, + compression=None, + wait_for_ready=None, + timeout=None, + metadata=None): + return grpc.experimental.unary_unary(request, target, '/stabilityai.api.dashboard.v1.DashboardService/UpdateUserInfo', + stability__api_dot_platform_dot_dashboard_dot_v1_dot_dashboard__pb2.UpdateUserInfoRequest.SerializeToString, + stability__api_dot_platform_dot_dashboard_dot_v1_dot_dashboard__pb2.User.FromString, + options, channel_credentials, + insecure, call_credentials, compression, wait_for_ready, timeout, metadata) + + @staticmethod + def CreatePasswordChangeTicket(request, + target, + options=(), + channel_credentials=None, + call_credentials=None, + insecure=False, + compression=None, + wait_for_ready=None, + timeout=None, + metadata=None): + return grpc.experimental.unary_unary(request, target, '/stabilityai.api.dashboard.v1.DashboardService/CreatePasswordChangeTicket', + stability__api_dot_platform_dot_dashboard_dot_v1_dot_dashboard__pb2.EmptyRequest.SerializeToString, + stability__api_dot_platform_dot_dashboard_dot_v1_dot_dashboard__pb2.UserPasswordChangeTicket.FromString, + options, channel_credentials, + insecure, call_credentials, compression, wait_for_ready, timeout, metadata) + + @staticmethod + def DeleteAccount(request, + target, + options=(), + channel_credentials=None, + call_credentials=None, + insecure=False, + compression=None, + wait_for_ready=None, + timeout=None, + metadata=None): + return grpc.experimental.unary_unary(request, target, '/stabilityai.api.dashboard.v1.DashboardService/DeleteAccount', + stability__api_dot_platform_dot_dashboard_dot_v1_dot_dashboard__pb2.EmptyRequest.SerializeToString, + stability__api_dot_platform_dot_dashboard_dot_v1_dot_dashboard__pb2.User.FromString, + options, channel_credentials, + insecure, call_credentials, compression, wait_for_ready, timeout, metadata) + + @staticmethod + def CreateCharge(request, + target, + options=(), + channel_credentials=None, + call_credentials=None, + insecure=False, + compression=None, + wait_for_ready=None, + timeout=None, + metadata=None): + return grpc.experimental.unary_unary(request, target, '/stabilityai.api.dashboard.v1.DashboardService/CreateCharge', + stability__api_dot_platform_dot_dashboard_dot_v1_dot_dashboard__pb2.CreateChargeRequest.SerializeToString, + stability__api_dot_platform_dot_dashboard_dot_v1_dot_dashboard__pb2.Charge.FromString, + options, channel_credentials, + insecure, call_credentials, compression, wait_for_ready, timeout, metadata) + + @staticmethod + def GetCharges(request, + target, + options=(), + channel_credentials=None, + call_credentials=None, + insecure=False, + compression=None, + wait_for_ready=None, + timeout=None, + metadata=None): + return grpc.experimental.unary_unary(request, target, '/stabilityai.api.dashboard.v1.DashboardService/GetCharges', + stability__api_dot_platform_dot_dashboard_dot_v1_dot_dashboard__pb2.GetChargesRequest.SerializeToString, + stability__api_dot_platform_dot_dashboard_dot_v1_dot_dashboard__pb2.Charges.FromString, + options, channel_credentials, + insecure, call_credentials, compression, wait_for_ready, timeout, metadata) + + @staticmethod + def CreateAutoChargeIntent(request, + target, + options=(), + channel_credentials=None, + call_credentials=None, + insecure=False, + compression=None, + wait_for_ready=None, + timeout=None, + metadata=None): + return grpc.experimental.unary_unary(request, target, '/stabilityai.api.dashboard.v1.DashboardService/CreateAutoChargeIntent', + stability__api_dot_platform_dot_dashboard_dot_v1_dot_dashboard__pb2.CreateAutoChargeIntentRequest.SerializeToString, + stability__api_dot_platform_dot_dashboard_dot_v1_dot_dashboard__pb2.AutoChargeIntent.FromString, + options, channel_credentials, + insecure, call_credentials, compression, wait_for_ready, timeout, metadata) + + @staticmethod + def UpdateAutoChargeIntent(request, + target, + options=(), + channel_credentials=None, + call_credentials=None, + insecure=False, + compression=None, + wait_for_ready=None, + timeout=None, + metadata=None): + return grpc.experimental.unary_unary(request, target, '/stabilityai.api.dashboard.v1.DashboardService/UpdateAutoChargeIntent', + stability__api_dot_platform_dot_dashboard_dot_v1_dot_dashboard__pb2.CreateAutoChargeIntentRequest.SerializeToString, + stability__api_dot_platform_dot_dashboard_dot_v1_dot_dashboard__pb2.AutoChargeIntent.FromString, + options, channel_credentials, + insecure, call_credentials, compression, wait_for_ready, timeout, metadata) + + @staticmethod + def GetAutoChargeIntent(request, + target, + options=(), + channel_credentials=None, + call_credentials=None, + insecure=False, + compression=None, + wait_for_ready=None, + timeout=None, + metadata=None): + return grpc.experimental.unary_unary(request, target, '/stabilityai.api.dashboard.v1.DashboardService/GetAutoChargeIntent', + stability__api_dot_platform_dot_dashboard_dot_v1_dot_dashboard__pb2.GetAutoChargeRequest.SerializeToString, + stability__api_dot_platform_dot_dashboard_dot_v1_dot_dashboard__pb2.AutoChargeIntent.FromString, + options, channel_credentials, + insecure, call_credentials, compression, wait_for_ready, timeout, metadata) diff --git a/src/stability_api/platform/dashboard/v1/dashboardv1connect/dashboard.connect.go b/src/stability_api/platform/dashboard/v1/dashboardv1connect/dashboard.connect.go new file mode 100644 index 0000000..f983bd7 --- /dev/null +++ b/src/stability_api/platform/dashboard/v1/dashboardv1connect/dashboard.connect.go @@ -0,0 +1,523 @@ +// Code generated by protoc-gen-connect-go. DO NOT EDIT. +// +// Source: stability_api/platform/dashboard/v1/dashboard.proto + +package dashboardv1connect + +import ( + connect "connectrpc.com/connect" + context "context" + errors "errors" + v1 "github.com/stability-ai/api-interfaces/src/stability_api/platform/dashboard/v1" + http "net/http" + strings "strings" +) + +// This is a compile-time assertion to ensure that this generated file and the connect package are +// compatible. If you get a compiler error that this constant is not defined, this code was +// generated with a version of connect newer than the one compiled into your binary. You can fix the +// problem by either regenerating this code with an older version of connect or updating the connect +// version compiled into your binary. +const _ = connect.IsAtLeastVersion0_1_0 + +const ( + // DashboardServiceName is the fully-qualified name of the DashboardService service. + DashboardServiceName = "stabilityai.api.dashboard.v1.DashboardService" +) + +// These constants are the fully-qualified names of the RPCs defined in this package. They're +// exposed at runtime as Spec.Procedure and as the final two segments of the HTTP route. +// +// Note that these are different from the fully-qualified method names used by +// google.golang.org/protobuf/reflect/protoreflect. To convert from these constants to +// reflection-formatted method names, remove the leading slash and convert the remaining slash to a +// period. +const ( + // DashboardServiceGetMeProcedure is the fully-qualified name of the DashboardService's GetMe RPC. + DashboardServiceGetMeProcedure = "/stabilityai.api.dashboard.v1.DashboardService/GetMe" + // DashboardServiceGetOrganizationProcedure is the fully-qualified name of the DashboardService's + // GetOrganization RPC. + DashboardServiceGetOrganizationProcedure = "/stabilityai.api.dashboard.v1.DashboardService/GetOrganization" + // DashboardServiceGetMetricsProcedure is the fully-qualified name of the DashboardService's + // GetMetrics RPC. + DashboardServiceGetMetricsProcedure = "/stabilityai.api.dashboard.v1.DashboardService/GetMetrics" + // DashboardServiceCreateAPIKeyProcedure is the fully-qualified name of the DashboardService's + // CreateAPIKey RPC. + DashboardServiceCreateAPIKeyProcedure = "/stabilityai.api.dashboard.v1.DashboardService/CreateAPIKey" + // DashboardServiceDeleteAPIKeyProcedure is the fully-qualified name of the DashboardService's + // DeleteAPIKey RPC. + DashboardServiceDeleteAPIKeyProcedure = "/stabilityai.api.dashboard.v1.DashboardService/DeleteAPIKey" + // DashboardServiceUpdateDefaultOrganizationProcedure is the fully-qualified name of the + // DashboardService's UpdateDefaultOrganization RPC. + DashboardServiceUpdateDefaultOrganizationProcedure = "/stabilityai.api.dashboard.v1.DashboardService/UpdateDefaultOrganization" + // DashboardServiceGetClientSettingsProcedure is the fully-qualified name of the DashboardService's + // GetClientSettings RPC. + DashboardServiceGetClientSettingsProcedure = "/stabilityai.api.dashboard.v1.DashboardService/GetClientSettings" + // DashboardServiceSetClientSettingsProcedure is the fully-qualified name of the DashboardService's + // SetClientSettings RPC. + DashboardServiceSetClientSettingsProcedure = "/stabilityai.api.dashboard.v1.DashboardService/SetClientSettings" + // DashboardServiceUpdateUserInfoProcedure is the fully-qualified name of the DashboardService's + // UpdateUserInfo RPC. + DashboardServiceUpdateUserInfoProcedure = "/stabilityai.api.dashboard.v1.DashboardService/UpdateUserInfo" + // DashboardServiceCreatePasswordChangeTicketProcedure is the fully-qualified name of the + // DashboardService's CreatePasswordChangeTicket RPC. + DashboardServiceCreatePasswordChangeTicketProcedure = "/stabilityai.api.dashboard.v1.DashboardService/CreatePasswordChangeTicket" + // DashboardServiceDeleteAccountProcedure is the fully-qualified name of the DashboardService's + // DeleteAccount RPC. + DashboardServiceDeleteAccountProcedure = "/stabilityai.api.dashboard.v1.DashboardService/DeleteAccount" + // DashboardServiceCreateChargeProcedure is the fully-qualified name of the DashboardService's + // CreateCharge RPC. + DashboardServiceCreateChargeProcedure = "/stabilityai.api.dashboard.v1.DashboardService/CreateCharge" + // DashboardServiceGetChargesProcedure is the fully-qualified name of the DashboardService's + // GetCharges RPC. + DashboardServiceGetChargesProcedure = "/stabilityai.api.dashboard.v1.DashboardService/GetCharges" + // DashboardServiceCreateAutoChargeIntentProcedure is the fully-qualified name of the + // DashboardService's CreateAutoChargeIntent RPC. + DashboardServiceCreateAutoChargeIntentProcedure = "/stabilityai.api.dashboard.v1.DashboardService/CreateAutoChargeIntent" + // DashboardServiceUpdateAutoChargeIntentProcedure is the fully-qualified name of the + // DashboardService's UpdateAutoChargeIntent RPC. + DashboardServiceUpdateAutoChargeIntentProcedure = "/stabilityai.api.dashboard.v1.DashboardService/UpdateAutoChargeIntent" + // DashboardServiceGetAutoChargeIntentProcedure is the fully-qualified name of the + // DashboardService's GetAutoChargeIntent RPC. + DashboardServiceGetAutoChargeIntentProcedure = "/stabilityai.api.dashboard.v1.DashboardService/GetAutoChargeIntent" +) + +// DashboardServiceClient is a client for the stabilityai.api.dashboard.v1.DashboardService service. +type DashboardServiceClient interface { + // Get info + GetMe(context.Context, *connect.Request[v1.EmptyRequest]) (*connect.Response[v1.User], error) + GetOrganization(context.Context, *connect.Request[v1.GetOrganizationRequest]) (*connect.Response[v1.Organization], error) + GetMetrics(context.Context, *connect.Request[v1.GetMetricsRequest]) (*connect.Response[v1.Metrics], error) + // API key management + CreateAPIKey(context.Context, *connect.Request[v1.APIKeyRequest]) (*connect.Response[v1.APIKey], error) + DeleteAPIKey(context.Context, *connect.Request[v1.APIKeyFindRequest]) (*connect.Response[v1.APIKey], error) + // User settings + UpdateDefaultOrganization(context.Context, *connect.Request[v1.UpdateDefaultOrganizationRequest]) (*connect.Response[v1.User], error) + GetClientSettings(context.Context, *connect.Request[v1.EmptyRequest]) (*connect.Response[v1.ClientSettings], error) + SetClientSettings(context.Context, *connect.Request[v1.ClientSettings]) (*connect.Response[v1.ClientSettings], error) + UpdateUserInfo(context.Context, *connect.Request[v1.UpdateUserInfoRequest]) (*connect.Response[v1.User], error) + CreatePasswordChangeTicket(context.Context, *connect.Request[v1.EmptyRequest]) (*connect.Response[v1.UserPasswordChangeTicket], error) + DeleteAccount(context.Context, *connect.Request[v1.EmptyRequest]) (*connect.Response[v1.User], error) + // Payment functions + CreateCharge(context.Context, *connect.Request[v1.CreateChargeRequest]) (*connect.Response[v1.Charge], error) + GetCharges(context.Context, *connect.Request[v1.GetChargesRequest]) (*connect.Response[v1.Charges], error) + CreateAutoChargeIntent(context.Context, *connect.Request[v1.CreateAutoChargeIntentRequest]) (*connect.Response[v1.AutoChargeIntent], error) + UpdateAutoChargeIntent(context.Context, *connect.Request[v1.CreateAutoChargeIntentRequest]) (*connect.Response[v1.AutoChargeIntent], error) + GetAutoChargeIntent(context.Context, *connect.Request[v1.GetAutoChargeRequest]) (*connect.Response[v1.AutoChargeIntent], error) +} + +// NewDashboardServiceClient constructs a client for the +// stabilityai.api.dashboard.v1.DashboardService service. By default, it uses the Connect protocol +// with the binary Protobuf Codec, asks for gzipped responses, and sends uncompressed requests. To +// use the gRPC or gRPC-Web protocols, supply the connect.WithGRPC() or connect.WithGRPCWeb() +// options. +// +// The URL supplied here should be the base URL for the Connect or gRPC server (for example, +// http://api.acme.com or https://acme.com/grpc). +func NewDashboardServiceClient(httpClient connect.HTTPClient, baseURL string, opts ...connect.ClientOption) DashboardServiceClient { + baseURL = strings.TrimRight(baseURL, "/") + return &dashboardServiceClient{ + getMe: connect.NewClient[v1.EmptyRequest, v1.User]( + httpClient, + baseURL+DashboardServiceGetMeProcedure, + opts..., + ), + getOrganization: connect.NewClient[v1.GetOrganizationRequest, v1.Organization]( + httpClient, + baseURL+DashboardServiceGetOrganizationProcedure, + opts..., + ), + getMetrics: connect.NewClient[v1.GetMetricsRequest, v1.Metrics]( + httpClient, + baseURL+DashboardServiceGetMetricsProcedure, + opts..., + ), + createAPIKey: connect.NewClient[v1.APIKeyRequest, v1.APIKey]( + httpClient, + baseURL+DashboardServiceCreateAPIKeyProcedure, + opts..., + ), + deleteAPIKey: connect.NewClient[v1.APIKeyFindRequest, v1.APIKey]( + httpClient, + baseURL+DashboardServiceDeleteAPIKeyProcedure, + opts..., + ), + updateDefaultOrganization: connect.NewClient[v1.UpdateDefaultOrganizationRequest, v1.User]( + httpClient, + baseURL+DashboardServiceUpdateDefaultOrganizationProcedure, + opts..., + ), + getClientSettings: connect.NewClient[v1.EmptyRequest, v1.ClientSettings]( + httpClient, + baseURL+DashboardServiceGetClientSettingsProcedure, + opts..., + ), + setClientSettings: connect.NewClient[v1.ClientSettings, v1.ClientSettings]( + httpClient, + baseURL+DashboardServiceSetClientSettingsProcedure, + opts..., + ), + updateUserInfo: connect.NewClient[v1.UpdateUserInfoRequest, v1.User]( + httpClient, + baseURL+DashboardServiceUpdateUserInfoProcedure, + opts..., + ), + createPasswordChangeTicket: connect.NewClient[v1.EmptyRequest, v1.UserPasswordChangeTicket]( + httpClient, + baseURL+DashboardServiceCreatePasswordChangeTicketProcedure, + opts..., + ), + deleteAccount: connect.NewClient[v1.EmptyRequest, v1.User]( + httpClient, + baseURL+DashboardServiceDeleteAccountProcedure, + opts..., + ), + createCharge: connect.NewClient[v1.CreateChargeRequest, v1.Charge]( + httpClient, + baseURL+DashboardServiceCreateChargeProcedure, + opts..., + ), + getCharges: connect.NewClient[v1.GetChargesRequest, v1.Charges]( + httpClient, + baseURL+DashboardServiceGetChargesProcedure, + opts..., + ), + createAutoChargeIntent: connect.NewClient[v1.CreateAutoChargeIntentRequest, v1.AutoChargeIntent]( + httpClient, + baseURL+DashboardServiceCreateAutoChargeIntentProcedure, + opts..., + ), + updateAutoChargeIntent: connect.NewClient[v1.CreateAutoChargeIntentRequest, v1.AutoChargeIntent]( + httpClient, + baseURL+DashboardServiceUpdateAutoChargeIntentProcedure, + opts..., + ), + getAutoChargeIntent: connect.NewClient[v1.GetAutoChargeRequest, v1.AutoChargeIntent]( + httpClient, + baseURL+DashboardServiceGetAutoChargeIntentProcedure, + opts..., + ), + } +} + +// dashboardServiceClient implements DashboardServiceClient. +type dashboardServiceClient struct { + getMe *connect.Client[v1.EmptyRequest, v1.User] + getOrganization *connect.Client[v1.GetOrganizationRequest, v1.Organization] + getMetrics *connect.Client[v1.GetMetricsRequest, v1.Metrics] + createAPIKey *connect.Client[v1.APIKeyRequest, v1.APIKey] + deleteAPIKey *connect.Client[v1.APIKeyFindRequest, v1.APIKey] + updateDefaultOrganization *connect.Client[v1.UpdateDefaultOrganizationRequest, v1.User] + getClientSettings *connect.Client[v1.EmptyRequest, v1.ClientSettings] + setClientSettings *connect.Client[v1.ClientSettings, v1.ClientSettings] + updateUserInfo *connect.Client[v1.UpdateUserInfoRequest, v1.User] + createPasswordChangeTicket *connect.Client[v1.EmptyRequest, v1.UserPasswordChangeTicket] + deleteAccount *connect.Client[v1.EmptyRequest, v1.User] + createCharge *connect.Client[v1.CreateChargeRequest, v1.Charge] + getCharges *connect.Client[v1.GetChargesRequest, v1.Charges] + createAutoChargeIntent *connect.Client[v1.CreateAutoChargeIntentRequest, v1.AutoChargeIntent] + updateAutoChargeIntent *connect.Client[v1.CreateAutoChargeIntentRequest, v1.AutoChargeIntent] + getAutoChargeIntent *connect.Client[v1.GetAutoChargeRequest, v1.AutoChargeIntent] +} + +// GetMe calls stabilityai.api.dashboard.v1.DashboardService.GetMe. +func (c *dashboardServiceClient) GetMe(ctx context.Context, req *connect.Request[v1.EmptyRequest]) (*connect.Response[v1.User], error) { + return c.getMe.CallUnary(ctx, req) +} + +// GetOrganization calls stabilityai.api.dashboard.v1.DashboardService.GetOrganization. +func (c *dashboardServiceClient) GetOrganization(ctx context.Context, req *connect.Request[v1.GetOrganizationRequest]) (*connect.Response[v1.Organization], error) { + return c.getOrganization.CallUnary(ctx, req) +} + +// GetMetrics calls stabilityai.api.dashboard.v1.DashboardService.GetMetrics. +func (c *dashboardServiceClient) GetMetrics(ctx context.Context, req *connect.Request[v1.GetMetricsRequest]) (*connect.Response[v1.Metrics], error) { + return c.getMetrics.CallUnary(ctx, req) +} + +// CreateAPIKey calls stabilityai.api.dashboard.v1.DashboardService.CreateAPIKey. +func (c *dashboardServiceClient) CreateAPIKey(ctx context.Context, req *connect.Request[v1.APIKeyRequest]) (*connect.Response[v1.APIKey], error) { + return c.createAPIKey.CallUnary(ctx, req) +} + +// DeleteAPIKey calls stabilityai.api.dashboard.v1.DashboardService.DeleteAPIKey. +func (c *dashboardServiceClient) DeleteAPIKey(ctx context.Context, req *connect.Request[v1.APIKeyFindRequest]) (*connect.Response[v1.APIKey], error) { + return c.deleteAPIKey.CallUnary(ctx, req) +} + +// UpdateDefaultOrganization calls +// stabilityai.api.dashboard.v1.DashboardService.UpdateDefaultOrganization. +func (c *dashboardServiceClient) UpdateDefaultOrganization(ctx context.Context, req *connect.Request[v1.UpdateDefaultOrganizationRequest]) (*connect.Response[v1.User], error) { + return c.updateDefaultOrganization.CallUnary(ctx, req) +} + +// GetClientSettings calls stabilityai.api.dashboard.v1.DashboardService.GetClientSettings. +func (c *dashboardServiceClient) GetClientSettings(ctx context.Context, req *connect.Request[v1.EmptyRequest]) (*connect.Response[v1.ClientSettings], error) { + return c.getClientSettings.CallUnary(ctx, req) +} + +// SetClientSettings calls stabilityai.api.dashboard.v1.DashboardService.SetClientSettings. +func (c *dashboardServiceClient) SetClientSettings(ctx context.Context, req *connect.Request[v1.ClientSettings]) (*connect.Response[v1.ClientSettings], error) { + return c.setClientSettings.CallUnary(ctx, req) +} + +// UpdateUserInfo calls stabilityai.api.dashboard.v1.DashboardService.UpdateUserInfo. +func (c *dashboardServiceClient) UpdateUserInfo(ctx context.Context, req *connect.Request[v1.UpdateUserInfoRequest]) (*connect.Response[v1.User], error) { + return c.updateUserInfo.CallUnary(ctx, req) +} + +// CreatePasswordChangeTicket calls +// stabilityai.api.dashboard.v1.DashboardService.CreatePasswordChangeTicket. +func (c *dashboardServiceClient) CreatePasswordChangeTicket(ctx context.Context, req *connect.Request[v1.EmptyRequest]) (*connect.Response[v1.UserPasswordChangeTicket], error) { + return c.createPasswordChangeTicket.CallUnary(ctx, req) +} + +// DeleteAccount calls stabilityai.api.dashboard.v1.DashboardService.DeleteAccount. +func (c *dashboardServiceClient) DeleteAccount(ctx context.Context, req *connect.Request[v1.EmptyRequest]) (*connect.Response[v1.User], error) { + return c.deleteAccount.CallUnary(ctx, req) +} + +// CreateCharge calls stabilityai.api.dashboard.v1.DashboardService.CreateCharge. +func (c *dashboardServiceClient) CreateCharge(ctx context.Context, req *connect.Request[v1.CreateChargeRequest]) (*connect.Response[v1.Charge], error) { + return c.createCharge.CallUnary(ctx, req) +} + +// GetCharges calls stabilityai.api.dashboard.v1.DashboardService.GetCharges. +func (c *dashboardServiceClient) GetCharges(ctx context.Context, req *connect.Request[v1.GetChargesRequest]) (*connect.Response[v1.Charges], error) { + return c.getCharges.CallUnary(ctx, req) +} + +// CreateAutoChargeIntent calls +// stabilityai.api.dashboard.v1.DashboardService.CreateAutoChargeIntent. +func (c *dashboardServiceClient) CreateAutoChargeIntent(ctx context.Context, req *connect.Request[v1.CreateAutoChargeIntentRequest]) (*connect.Response[v1.AutoChargeIntent], error) { + return c.createAutoChargeIntent.CallUnary(ctx, req) +} + +// UpdateAutoChargeIntent calls +// stabilityai.api.dashboard.v1.DashboardService.UpdateAutoChargeIntent. +func (c *dashboardServiceClient) UpdateAutoChargeIntent(ctx context.Context, req *connect.Request[v1.CreateAutoChargeIntentRequest]) (*connect.Response[v1.AutoChargeIntent], error) { + return c.updateAutoChargeIntent.CallUnary(ctx, req) +} + +// GetAutoChargeIntent calls stabilityai.api.dashboard.v1.DashboardService.GetAutoChargeIntent. +func (c *dashboardServiceClient) GetAutoChargeIntent(ctx context.Context, req *connect.Request[v1.GetAutoChargeRequest]) (*connect.Response[v1.AutoChargeIntent], error) { + return c.getAutoChargeIntent.CallUnary(ctx, req) +} + +// DashboardServiceHandler is an implementation of the stabilityai.api.dashboard.v1.DashboardService +// service. +type DashboardServiceHandler interface { + // Get info + GetMe(context.Context, *connect.Request[v1.EmptyRequest]) (*connect.Response[v1.User], error) + GetOrganization(context.Context, *connect.Request[v1.GetOrganizationRequest]) (*connect.Response[v1.Organization], error) + GetMetrics(context.Context, *connect.Request[v1.GetMetricsRequest]) (*connect.Response[v1.Metrics], error) + // API key management + CreateAPIKey(context.Context, *connect.Request[v1.APIKeyRequest]) (*connect.Response[v1.APIKey], error) + DeleteAPIKey(context.Context, *connect.Request[v1.APIKeyFindRequest]) (*connect.Response[v1.APIKey], error) + // User settings + UpdateDefaultOrganization(context.Context, *connect.Request[v1.UpdateDefaultOrganizationRequest]) (*connect.Response[v1.User], error) + GetClientSettings(context.Context, *connect.Request[v1.EmptyRequest]) (*connect.Response[v1.ClientSettings], error) + SetClientSettings(context.Context, *connect.Request[v1.ClientSettings]) (*connect.Response[v1.ClientSettings], error) + UpdateUserInfo(context.Context, *connect.Request[v1.UpdateUserInfoRequest]) (*connect.Response[v1.User], error) + CreatePasswordChangeTicket(context.Context, *connect.Request[v1.EmptyRequest]) (*connect.Response[v1.UserPasswordChangeTicket], error) + DeleteAccount(context.Context, *connect.Request[v1.EmptyRequest]) (*connect.Response[v1.User], error) + // Payment functions + CreateCharge(context.Context, *connect.Request[v1.CreateChargeRequest]) (*connect.Response[v1.Charge], error) + GetCharges(context.Context, *connect.Request[v1.GetChargesRequest]) (*connect.Response[v1.Charges], error) + CreateAutoChargeIntent(context.Context, *connect.Request[v1.CreateAutoChargeIntentRequest]) (*connect.Response[v1.AutoChargeIntent], error) + UpdateAutoChargeIntent(context.Context, *connect.Request[v1.CreateAutoChargeIntentRequest]) (*connect.Response[v1.AutoChargeIntent], error) + GetAutoChargeIntent(context.Context, *connect.Request[v1.GetAutoChargeRequest]) (*connect.Response[v1.AutoChargeIntent], error) +} + +// NewDashboardServiceHandler builds an HTTP handler from the service implementation. It returns the +// path on which to mount the handler and the handler itself. +// +// By default, handlers support the Connect, gRPC, and gRPC-Web protocols with the binary Protobuf +// and JSON codecs. They also support gzip compression. +func NewDashboardServiceHandler(svc DashboardServiceHandler, opts ...connect.HandlerOption) (string, http.Handler) { + dashboardServiceGetMeHandler := connect.NewUnaryHandler( + DashboardServiceGetMeProcedure, + svc.GetMe, + opts..., + ) + dashboardServiceGetOrganizationHandler := connect.NewUnaryHandler( + DashboardServiceGetOrganizationProcedure, + svc.GetOrganization, + opts..., + ) + dashboardServiceGetMetricsHandler := connect.NewUnaryHandler( + DashboardServiceGetMetricsProcedure, + svc.GetMetrics, + opts..., + ) + dashboardServiceCreateAPIKeyHandler := connect.NewUnaryHandler( + DashboardServiceCreateAPIKeyProcedure, + svc.CreateAPIKey, + opts..., + ) + dashboardServiceDeleteAPIKeyHandler := connect.NewUnaryHandler( + DashboardServiceDeleteAPIKeyProcedure, + svc.DeleteAPIKey, + opts..., + ) + dashboardServiceUpdateDefaultOrganizationHandler := connect.NewUnaryHandler( + DashboardServiceUpdateDefaultOrganizationProcedure, + svc.UpdateDefaultOrganization, + opts..., + ) + dashboardServiceGetClientSettingsHandler := connect.NewUnaryHandler( + DashboardServiceGetClientSettingsProcedure, + svc.GetClientSettings, + opts..., + ) + dashboardServiceSetClientSettingsHandler := connect.NewUnaryHandler( + DashboardServiceSetClientSettingsProcedure, + svc.SetClientSettings, + opts..., + ) + dashboardServiceUpdateUserInfoHandler := connect.NewUnaryHandler( + DashboardServiceUpdateUserInfoProcedure, + svc.UpdateUserInfo, + opts..., + ) + dashboardServiceCreatePasswordChangeTicketHandler := connect.NewUnaryHandler( + DashboardServiceCreatePasswordChangeTicketProcedure, + svc.CreatePasswordChangeTicket, + opts..., + ) + dashboardServiceDeleteAccountHandler := connect.NewUnaryHandler( + DashboardServiceDeleteAccountProcedure, + svc.DeleteAccount, + opts..., + ) + dashboardServiceCreateChargeHandler := connect.NewUnaryHandler( + DashboardServiceCreateChargeProcedure, + svc.CreateCharge, + opts..., + ) + dashboardServiceGetChargesHandler := connect.NewUnaryHandler( + DashboardServiceGetChargesProcedure, + svc.GetCharges, + opts..., + ) + dashboardServiceCreateAutoChargeIntentHandler := connect.NewUnaryHandler( + DashboardServiceCreateAutoChargeIntentProcedure, + svc.CreateAutoChargeIntent, + opts..., + ) + dashboardServiceUpdateAutoChargeIntentHandler := connect.NewUnaryHandler( + DashboardServiceUpdateAutoChargeIntentProcedure, + svc.UpdateAutoChargeIntent, + opts..., + ) + dashboardServiceGetAutoChargeIntentHandler := connect.NewUnaryHandler( + DashboardServiceGetAutoChargeIntentProcedure, + svc.GetAutoChargeIntent, + opts..., + ) + return "/stabilityai.api.dashboard.v1.DashboardService/", http.HandlerFunc(func(w http.ResponseWriter, r *http.Request) { + switch r.URL.Path { + case DashboardServiceGetMeProcedure: + dashboardServiceGetMeHandler.ServeHTTP(w, r) + case DashboardServiceGetOrganizationProcedure: + dashboardServiceGetOrganizationHandler.ServeHTTP(w, r) + case DashboardServiceGetMetricsProcedure: + dashboardServiceGetMetricsHandler.ServeHTTP(w, r) + case DashboardServiceCreateAPIKeyProcedure: + dashboardServiceCreateAPIKeyHandler.ServeHTTP(w, r) + case DashboardServiceDeleteAPIKeyProcedure: + dashboardServiceDeleteAPIKeyHandler.ServeHTTP(w, r) + case DashboardServiceUpdateDefaultOrganizationProcedure: + dashboardServiceUpdateDefaultOrganizationHandler.ServeHTTP(w, r) + case DashboardServiceGetClientSettingsProcedure: + dashboardServiceGetClientSettingsHandler.ServeHTTP(w, r) + case DashboardServiceSetClientSettingsProcedure: + dashboardServiceSetClientSettingsHandler.ServeHTTP(w, r) + case DashboardServiceUpdateUserInfoProcedure: + dashboardServiceUpdateUserInfoHandler.ServeHTTP(w, r) + case DashboardServiceCreatePasswordChangeTicketProcedure: + dashboardServiceCreatePasswordChangeTicketHandler.ServeHTTP(w, r) + case DashboardServiceDeleteAccountProcedure: + dashboardServiceDeleteAccountHandler.ServeHTTP(w, r) + case DashboardServiceCreateChargeProcedure: + dashboardServiceCreateChargeHandler.ServeHTTP(w, r) + case DashboardServiceGetChargesProcedure: + dashboardServiceGetChargesHandler.ServeHTTP(w, r) + case DashboardServiceCreateAutoChargeIntentProcedure: + dashboardServiceCreateAutoChargeIntentHandler.ServeHTTP(w, r) + case DashboardServiceUpdateAutoChargeIntentProcedure: + dashboardServiceUpdateAutoChargeIntentHandler.ServeHTTP(w, r) + case DashboardServiceGetAutoChargeIntentProcedure: + dashboardServiceGetAutoChargeIntentHandler.ServeHTTP(w, r) + default: + http.NotFound(w, r) + } + }) +} + +// UnimplementedDashboardServiceHandler returns CodeUnimplemented from all methods. +type UnimplementedDashboardServiceHandler struct{} + +func (UnimplementedDashboardServiceHandler) GetMe(context.Context, *connect.Request[v1.EmptyRequest]) (*connect.Response[v1.User], error) { + return nil, connect.NewError(connect.CodeUnimplemented, errors.New("stabilityai.api.dashboard.v1.DashboardService.GetMe is not implemented")) +} + +func (UnimplementedDashboardServiceHandler) GetOrganization(context.Context, *connect.Request[v1.GetOrganizationRequest]) (*connect.Response[v1.Organization], error) { + return nil, connect.NewError(connect.CodeUnimplemented, errors.New("stabilityai.api.dashboard.v1.DashboardService.GetOrganization is not implemented")) +} + +func (UnimplementedDashboardServiceHandler) GetMetrics(context.Context, *connect.Request[v1.GetMetricsRequest]) (*connect.Response[v1.Metrics], error) { + return nil, connect.NewError(connect.CodeUnimplemented, errors.New("stabilityai.api.dashboard.v1.DashboardService.GetMetrics is not implemented")) +} + +func (UnimplementedDashboardServiceHandler) CreateAPIKey(context.Context, *connect.Request[v1.APIKeyRequest]) (*connect.Response[v1.APIKey], error) { + return nil, connect.NewError(connect.CodeUnimplemented, errors.New("stabilityai.api.dashboard.v1.DashboardService.CreateAPIKey is not implemented")) +} + +func (UnimplementedDashboardServiceHandler) DeleteAPIKey(context.Context, *connect.Request[v1.APIKeyFindRequest]) (*connect.Response[v1.APIKey], error) { + return nil, connect.NewError(connect.CodeUnimplemented, errors.New("stabilityai.api.dashboard.v1.DashboardService.DeleteAPIKey is not implemented")) +} + +func (UnimplementedDashboardServiceHandler) UpdateDefaultOrganization(context.Context, *connect.Request[v1.UpdateDefaultOrganizationRequest]) (*connect.Response[v1.User], error) { + return nil, connect.NewError(connect.CodeUnimplemented, errors.New("stabilityai.api.dashboard.v1.DashboardService.UpdateDefaultOrganization is not implemented")) +} + +func (UnimplementedDashboardServiceHandler) GetClientSettings(context.Context, *connect.Request[v1.EmptyRequest]) (*connect.Response[v1.ClientSettings], error) { + return nil, connect.NewError(connect.CodeUnimplemented, errors.New("stabilityai.api.dashboard.v1.DashboardService.GetClientSettings is not implemented")) +} + +func (UnimplementedDashboardServiceHandler) SetClientSettings(context.Context, *connect.Request[v1.ClientSettings]) (*connect.Response[v1.ClientSettings], error) { + return nil, connect.NewError(connect.CodeUnimplemented, errors.New("stabilityai.api.dashboard.v1.DashboardService.SetClientSettings is not implemented")) +} + +func (UnimplementedDashboardServiceHandler) UpdateUserInfo(context.Context, *connect.Request[v1.UpdateUserInfoRequest]) (*connect.Response[v1.User], error) { + return nil, connect.NewError(connect.CodeUnimplemented, errors.New("stabilityai.api.dashboard.v1.DashboardService.UpdateUserInfo is not implemented")) +} + +func (UnimplementedDashboardServiceHandler) CreatePasswordChangeTicket(context.Context, *connect.Request[v1.EmptyRequest]) (*connect.Response[v1.UserPasswordChangeTicket], error) { + return nil, connect.NewError(connect.CodeUnimplemented, errors.New("stabilityai.api.dashboard.v1.DashboardService.CreatePasswordChangeTicket is not implemented")) +} + +func (UnimplementedDashboardServiceHandler) DeleteAccount(context.Context, *connect.Request[v1.EmptyRequest]) (*connect.Response[v1.User], error) { + return nil, connect.NewError(connect.CodeUnimplemented, errors.New("stabilityai.api.dashboard.v1.DashboardService.DeleteAccount is not implemented")) +} + +func (UnimplementedDashboardServiceHandler) CreateCharge(context.Context, *connect.Request[v1.CreateChargeRequest]) (*connect.Response[v1.Charge], error) { + return nil, connect.NewError(connect.CodeUnimplemented, errors.New("stabilityai.api.dashboard.v1.DashboardService.CreateCharge is not implemented")) +} + +func (UnimplementedDashboardServiceHandler) GetCharges(context.Context, *connect.Request[v1.GetChargesRequest]) (*connect.Response[v1.Charges], error) { + return nil, connect.NewError(connect.CodeUnimplemented, errors.New("stabilityai.api.dashboard.v1.DashboardService.GetCharges is not implemented")) +} + +func (UnimplementedDashboardServiceHandler) CreateAutoChargeIntent(context.Context, *connect.Request[v1.CreateAutoChargeIntentRequest]) (*connect.Response[v1.AutoChargeIntent], error) { + return nil, connect.NewError(connect.CodeUnimplemented, errors.New("stabilityai.api.dashboard.v1.DashboardService.CreateAutoChargeIntent is not implemented")) +} + +func (UnimplementedDashboardServiceHandler) UpdateAutoChargeIntent(context.Context, *connect.Request[v1.CreateAutoChargeIntentRequest]) (*connect.Response[v1.AutoChargeIntent], error) { + return nil, connect.NewError(connect.CodeUnimplemented, errors.New("stabilityai.api.dashboard.v1.DashboardService.UpdateAutoChargeIntent is not implemented")) +} + +func (UnimplementedDashboardServiceHandler) GetAutoChargeIntent(context.Context, *connect.Request[v1.GetAutoChargeRequest]) (*connect.Response[v1.AutoChargeIntent], error) { + return nil, connect.NewError(connect.CodeUnimplemented, errors.New("stabilityai.api.dashboard.v1.DashboardService.GetAutoChargeIntent is not implemented")) +} diff --git a/src/stability_api/platform/engines/v1/engines.pb.go b/src/stability_api/platform/engines/v1/engines.pb.go new file mode 100644 index 0000000..1b91a91 --- /dev/null +++ b/src/stability_api/platform/engines/v1/engines.pb.go @@ -0,0 +1,499 @@ +// Code generated by protoc-gen-go. DO NOT EDIT. +// versions: +// protoc-gen-go v1.31.0 +// protoc (unknown) +// source: stability_api/platform/engines/v1/engines.proto + +package enginesv1 + +import ( + protoreflect "google.golang.org/protobuf/reflect/protoreflect" + protoimpl "google.golang.org/protobuf/runtime/protoimpl" + reflect "reflect" + sync "sync" +) + +const ( + // Verify that this generated code is sufficiently up-to-date. + _ = protoimpl.EnforceVersion(20 - protoimpl.MinVersion) + // Verify that runtime/protoimpl is sufficiently up-to-date. + _ = protoimpl.EnforceVersion(protoimpl.MaxVersion - 20) +) + +// Possible engine type +type EngineType int32 + +const ( + EngineType_TEXT EngineType = 0 + EngineType_PICTURE EngineType = 1 + EngineType_AUDIO EngineType = 2 + EngineType_VIDEO EngineType = 3 + EngineType_CLASSIFICATION EngineType = 4 + EngineType_STORAGE EngineType = 5 +) + +// Enum value maps for EngineType. +var ( + EngineType_name = map[int32]string{ + 0: "TEXT", + 1: "PICTURE", + 2: "AUDIO", + 3: "VIDEO", + 4: "CLASSIFICATION", + 5: "STORAGE", + } + EngineType_value = map[string]int32{ + "TEXT": 0, + "PICTURE": 1, + "AUDIO": 2, + "VIDEO": 3, + "CLASSIFICATION": 4, + "STORAGE": 5, + } +) + +func (x EngineType) Enum() *EngineType { + p := new(EngineType) + *p = x + return p +} + +func (x EngineType) String() string { + return protoimpl.X.EnumStringOf(x.Descriptor(), protoreflect.EnumNumber(x)) +} + +func (EngineType) Descriptor() protoreflect.EnumDescriptor { + return file_stability_api_platform_engines_v1_engines_proto_enumTypes[0].Descriptor() +} + +func (EngineType) Type() protoreflect.EnumType { + return &file_stability_api_platform_engines_v1_engines_proto_enumTypes[0] +} + +func (x EngineType) Number() protoreflect.EnumNumber { + return protoreflect.EnumNumber(x) +} + +// Deprecated: Use EngineType.Descriptor instead. +func (EngineType) EnumDescriptor() ([]byte, []int) { + return file_stability_api_platform_engines_v1_engines_proto_rawDescGZIP(), []int{0} +} + +type EngineTokenizer int32 + +const ( + EngineTokenizer_GPT2 EngineTokenizer = 0 + EngineTokenizer_PILE EngineTokenizer = 1 +) + +// Enum value maps for EngineTokenizer. +var ( + EngineTokenizer_name = map[int32]string{ + 0: "GPT2", + 1: "PILE", + } + EngineTokenizer_value = map[string]int32{ + "GPT2": 0, + "PILE": 1, + } +) + +func (x EngineTokenizer) Enum() *EngineTokenizer { + p := new(EngineTokenizer) + *p = x + return p +} + +func (x EngineTokenizer) String() string { + return protoimpl.X.EnumStringOf(x.Descriptor(), protoreflect.EnumNumber(x)) +} + +func (EngineTokenizer) Descriptor() protoreflect.EnumDescriptor { + return file_stability_api_platform_engines_v1_engines_proto_enumTypes[1].Descriptor() +} + +func (EngineTokenizer) Type() protoreflect.EnumType { + return &file_stability_api_platform_engines_v1_engines_proto_enumTypes[1] +} + +func (x EngineTokenizer) Number() protoreflect.EnumNumber { + return protoreflect.EnumNumber(x) +} + +// Deprecated: Use EngineTokenizer.Descriptor instead. +func (EngineTokenizer) EnumDescriptor() ([]byte, []int) { + return file_stability_api_platform_engines_v1_engines_proto_rawDescGZIP(), []int{1} +} + +// Engine info struct +type EngineInfo struct { + state protoimpl.MessageState + sizeCache protoimpl.SizeCache + unknownFields protoimpl.UnknownFields + + Id string `protobuf:"bytes,1,opt,name=id,proto3" json:"id,omitempty"` + Owner string `protobuf:"bytes,2,opt,name=owner,proto3" json:"owner,omitempty"` + Ready bool `protobuf:"varint,3,opt,name=ready,proto3" json:"ready,omitempty"` + Type EngineType `protobuf:"varint,4,opt,name=type,proto3,enum=stabilityai.platformapis.engines.v1.EngineType" json:"type,omitempty"` + Tokenizer EngineTokenizer `protobuf:"varint,5,opt,name=tokenizer,proto3,enum=stabilityai.platformapis.engines.v1.EngineTokenizer" json:"tokenizer,omitempty"` + Name string `protobuf:"bytes,6,opt,name=name,proto3" json:"name,omitempty"` + Description string `protobuf:"bytes,7,opt,name=description,proto3" json:"description,omitempty"` + CanFineTune bool `protobuf:"varint,8,opt,name=can_fine_tune,json=canFineTune,proto3" json:"can_fine_tune,omitempty"` + IsAdaptive bool `protobuf:"varint,9,opt,name=is_adaptive,json=isAdaptive,proto3" json:"is_adaptive,omitempty"` // Whether this Engine supports T2I Adapters +} + +func (x *EngineInfo) Reset() { + *x = EngineInfo{} + if protoimpl.UnsafeEnabled { + mi := &file_stability_api_platform_engines_v1_engines_proto_msgTypes[0] + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + ms.StoreMessageInfo(mi) + } +} + +func (x *EngineInfo) String() string { + return protoimpl.X.MessageStringOf(x) +} + +func (*EngineInfo) ProtoMessage() {} + +func (x *EngineInfo) ProtoReflect() protoreflect.Message { + mi := &file_stability_api_platform_engines_v1_engines_proto_msgTypes[0] + if protoimpl.UnsafeEnabled && x != nil { + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + if ms.LoadMessageInfo() == nil { + ms.StoreMessageInfo(mi) + } + return ms + } + return mi.MessageOf(x) +} + +// Deprecated: Use EngineInfo.ProtoReflect.Descriptor instead. +func (*EngineInfo) Descriptor() ([]byte, []int) { + return file_stability_api_platform_engines_v1_engines_proto_rawDescGZIP(), []int{0} +} + +func (x *EngineInfo) GetId() string { + if x != nil { + return x.Id + } + return "" +} + +func (x *EngineInfo) GetOwner() string { + if x != nil { + return x.Owner + } + return "" +} + +func (x *EngineInfo) GetReady() bool { + if x != nil { + return x.Ready + } + return false +} + +func (x *EngineInfo) GetType() EngineType { + if x != nil { + return x.Type + } + return EngineType_TEXT +} + +func (x *EngineInfo) GetTokenizer() EngineTokenizer { + if x != nil { + return x.Tokenizer + } + return EngineTokenizer_GPT2 +} + +func (x *EngineInfo) GetName() string { + if x != nil { + return x.Name + } + return "" +} + +func (x *EngineInfo) GetDescription() string { + if x != nil { + return x.Description + } + return "" +} + +func (x *EngineInfo) GetCanFineTune() bool { + if x != nil { + return x.CanFineTune + } + return false +} + +func (x *EngineInfo) GetIsAdaptive() bool { + if x != nil { + return x.IsAdaptive + } + return false +} + +type ListEnginesRequest struct { + state protoimpl.MessageState + sizeCache protoimpl.SizeCache + unknownFields protoimpl.UnknownFields +} + +func (x *ListEnginesRequest) Reset() { + *x = ListEnginesRequest{} + if protoimpl.UnsafeEnabled { + mi := &file_stability_api_platform_engines_v1_engines_proto_msgTypes[1] + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + ms.StoreMessageInfo(mi) + } +} + +func (x *ListEnginesRequest) String() string { + return protoimpl.X.MessageStringOf(x) +} + +func (*ListEnginesRequest) ProtoMessage() {} + +func (x *ListEnginesRequest) ProtoReflect() protoreflect.Message { + mi := &file_stability_api_platform_engines_v1_engines_proto_msgTypes[1] + if protoimpl.UnsafeEnabled && x != nil { + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + if ms.LoadMessageInfo() == nil { + ms.StoreMessageInfo(mi) + } + return ms + } + return mi.MessageOf(x) +} + +// Deprecated: Use ListEnginesRequest.ProtoReflect.Descriptor instead. +func (*ListEnginesRequest) Descriptor() ([]byte, []int) { + return file_stability_api_platform_engines_v1_engines_proto_rawDescGZIP(), []int{1} +} + +// Engine info list +type Engines struct { + state protoimpl.MessageState + sizeCache protoimpl.SizeCache + unknownFields protoimpl.UnknownFields + + Engine []*EngineInfo `protobuf:"bytes,1,rep,name=engine,proto3" json:"engine,omitempty"` +} + +func (x *Engines) Reset() { + *x = Engines{} + if protoimpl.UnsafeEnabled { + mi := &file_stability_api_platform_engines_v1_engines_proto_msgTypes[2] + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + ms.StoreMessageInfo(mi) + } +} + +func (x *Engines) String() string { + return protoimpl.X.MessageStringOf(x) +} + +func (*Engines) ProtoMessage() {} + +func (x *Engines) ProtoReflect() protoreflect.Message { + mi := &file_stability_api_platform_engines_v1_engines_proto_msgTypes[2] + if protoimpl.UnsafeEnabled && x != nil { + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + if ms.LoadMessageInfo() == nil { + ms.StoreMessageInfo(mi) + } + return ms + } + return mi.MessageOf(x) +} + +// Deprecated: Use Engines.ProtoReflect.Descriptor instead. +func (*Engines) Descriptor() ([]byte, []int) { + return file_stability_api_platform_engines_v1_engines_proto_rawDescGZIP(), []int{2} +} + +func (x *Engines) GetEngine() []*EngineInfo { + if x != nil { + return x.Engine + } + return nil +} + +var File_stability_api_platform_engines_v1_engines_proto protoreflect.FileDescriptor + +var file_stability_api_platform_engines_v1_engines_proto_rawDesc = []byte{ + 0x0a, 0x2f, 0x73, 0x74, 0x61, 0x62, 0x69, 0x6c, 0x69, 0x74, 0x79, 0x5f, 0x61, 0x70, 0x69, 0x2f, + 0x70, 0x6c, 0x61, 0x74, 0x66, 0x6f, 0x72, 0x6d, 0x2f, 0x65, 0x6e, 0x67, 0x69, 0x6e, 0x65, 0x73, + 0x2f, 0x76, 0x31, 0x2f, 0x65, 0x6e, 0x67, 0x69, 0x6e, 0x65, 0x73, 0x2e, 0x70, 0x72, 0x6f, 0x74, + 0x6f, 0x12, 0x23, 0x73, 0x74, 0x61, 0x62, 0x69, 0x6c, 0x69, 0x74, 0x79, 0x61, 0x69, 0x2e, 0x70, + 0x6c, 0x61, 0x74, 0x66, 0x6f, 0x72, 0x6d, 0x61, 0x70, 0x69, 0x73, 0x2e, 0x65, 0x6e, 0x67, 0x69, + 0x6e, 0x65, 0x73, 0x2e, 0x76, 0x31, 0x22, 0xdc, 0x02, 0x0a, 0x0a, 0x45, 0x6e, 0x67, 0x69, 0x6e, + 0x65, 0x49, 0x6e, 0x66, 0x6f, 0x12, 0x0e, 0x0a, 0x02, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, + 0x09, 0x52, 0x02, 0x69, 0x64, 0x12, 0x14, 0x0a, 0x05, 0x6f, 0x77, 0x6e, 0x65, 0x72, 0x18, 0x02, + 0x20, 0x01, 0x28, 0x09, 0x52, 0x05, 0x6f, 0x77, 0x6e, 0x65, 0x72, 0x12, 0x14, 0x0a, 0x05, 0x72, + 0x65, 0x61, 0x64, 0x79, 0x18, 0x03, 0x20, 0x01, 0x28, 0x08, 0x52, 0x05, 0x72, 0x65, 0x61, 0x64, + 0x79, 0x12, 0x43, 0x0a, 0x04, 0x74, 0x79, 0x70, 0x65, 0x18, 0x04, 0x20, 0x01, 0x28, 0x0e, 0x32, + 0x2f, 0x2e, 0x73, 0x74, 0x61, 0x62, 0x69, 0x6c, 0x69, 0x74, 0x79, 0x61, 0x69, 0x2e, 0x70, 0x6c, + 0x61, 0x74, 0x66, 0x6f, 0x72, 0x6d, 0x61, 0x70, 0x69, 0x73, 0x2e, 0x65, 0x6e, 0x67, 0x69, 0x6e, + 0x65, 0x73, 0x2e, 0x76, 0x31, 0x2e, 0x45, 0x6e, 0x67, 0x69, 0x6e, 0x65, 0x54, 0x79, 0x70, 0x65, + 0x52, 0x04, 0x74, 0x79, 0x70, 0x65, 0x12, 0x52, 0x0a, 0x09, 0x74, 0x6f, 0x6b, 0x65, 0x6e, 0x69, + 0x7a, 0x65, 0x72, 0x18, 0x05, 0x20, 0x01, 0x28, 0x0e, 0x32, 0x34, 0x2e, 0x73, 0x74, 0x61, 0x62, + 0x69, 0x6c, 0x69, 0x74, 0x79, 0x61, 0x69, 0x2e, 0x70, 0x6c, 0x61, 0x74, 0x66, 0x6f, 0x72, 0x6d, + 0x61, 0x70, 0x69, 0x73, 0x2e, 0x65, 0x6e, 0x67, 0x69, 0x6e, 0x65, 0x73, 0x2e, 0x76, 0x31, 0x2e, + 0x45, 0x6e, 0x67, 0x69, 0x6e, 0x65, 0x54, 0x6f, 0x6b, 0x65, 0x6e, 0x69, 0x7a, 0x65, 0x72, 0x52, + 0x09, 0x74, 0x6f, 0x6b, 0x65, 0x6e, 0x69, 0x7a, 0x65, 0x72, 0x12, 0x12, 0x0a, 0x04, 0x6e, 0x61, + 0x6d, 0x65, 0x18, 0x06, 0x20, 0x01, 0x28, 0x09, 0x52, 0x04, 0x6e, 0x61, 0x6d, 0x65, 0x12, 0x20, + 0x0a, 0x0b, 0x64, 0x65, 0x73, 0x63, 0x72, 0x69, 0x70, 0x74, 0x69, 0x6f, 0x6e, 0x18, 0x07, 0x20, + 0x01, 0x28, 0x09, 0x52, 0x0b, 0x64, 0x65, 0x73, 0x63, 0x72, 0x69, 0x70, 0x74, 0x69, 0x6f, 0x6e, + 0x12, 0x22, 0x0a, 0x0d, 0x63, 0x61, 0x6e, 0x5f, 0x66, 0x69, 0x6e, 0x65, 0x5f, 0x74, 0x75, 0x6e, + 0x65, 0x18, 0x08, 0x20, 0x01, 0x28, 0x08, 0x52, 0x0b, 0x63, 0x61, 0x6e, 0x46, 0x69, 0x6e, 0x65, + 0x54, 0x75, 0x6e, 0x65, 0x12, 0x1f, 0x0a, 0x0b, 0x69, 0x73, 0x5f, 0x61, 0x64, 0x61, 0x70, 0x74, + 0x69, 0x76, 0x65, 0x18, 0x09, 0x20, 0x01, 0x28, 0x08, 0x52, 0x0a, 0x69, 0x73, 0x41, 0x64, 0x61, + 0x70, 0x74, 0x69, 0x76, 0x65, 0x22, 0x14, 0x0a, 0x12, 0x4c, 0x69, 0x73, 0x74, 0x45, 0x6e, 0x67, + 0x69, 0x6e, 0x65, 0x73, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x22, 0x52, 0x0a, 0x07, 0x45, + 0x6e, 0x67, 0x69, 0x6e, 0x65, 0x73, 0x12, 0x47, 0x0a, 0x06, 0x65, 0x6e, 0x67, 0x69, 0x6e, 0x65, + 0x18, 0x01, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x2f, 0x2e, 0x73, 0x74, 0x61, 0x62, 0x69, 0x6c, 0x69, + 0x74, 0x79, 0x61, 0x69, 0x2e, 0x70, 0x6c, 0x61, 0x74, 0x66, 0x6f, 0x72, 0x6d, 0x61, 0x70, 0x69, + 0x73, 0x2e, 0x65, 0x6e, 0x67, 0x69, 0x6e, 0x65, 0x73, 0x2e, 0x76, 0x31, 0x2e, 0x45, 0x6e, 0x67, + 0x69, 0x6e, 0x65, 0x49, 0x6e, 0x66, 0x6f, 0x52, 0x06, 0x65, 0x6e, 0x67, 0x69, 0x6e, 0x65, 0x2a, + 0x5a, 0x0a, 0x0a, 0x45, 0x6e, 0x67, 0x69, 0x6e, 0x65, 0x54, 0x79, 0x70, 0x65, 0x12, 0x08, 0x0a, + 0x04, 0x54, 0x45, 0x58, 0x54, 0x10, 0x00, 0x12, 0x0b, 0x0a, 0x07, 0x50, 0x49, 0x43, 0x54, 0x55, + 0x52, 0x45, 0x10, 0x01, 0x12, 0x09, 0x0a, 0x05, 0x41, 0x55, 0x44, 0x49, 0x4f, 0x10, 0x02, 0x12, + 0x09, 0x0a, 0x05, 0x56, 0x49, 0x44, 0x45, 0x4f, 0x10, 0x03, 0x12, 0x12, 0x0a, 0x0e, 0x43, 0x4c, + 0x41, 0x53, 0x53, 0x49, 0x46, 0x49, 0x43, 0x41, 0x54, 0x49, 0x4f, 0x4e, 0x10, 0x04, 0x12, 0x0b, + 0x0a, 0x07, 0x53, 0x54, 0x4f, 0x52, 0x41, 0x47, 0x45, 0x10, 0x05, 0x2a, 0x25, 0x0a, 0x0f, 0x45, + 0x6e, 0x67, 0x69, 0x6e, 0x65, 0x54, 0x6f, 0x6b, 0x65, 0x6e, 0x69, 0x7a, 0x65, 0x72, 0x12, 0x08, + 0x0a, 0x04, 0x47, 0x50, 0x54, 0x32, 0x10, 0x00, 0x12, 0x08, 0x0a, 0x04, 0x50, 0x49, 0x4c, 0x45, + 0x10, 0x01, 0x32, 0x88, 0x01, 0x0a, 0x0e, 0x45, 0x6e, 0x67, 0x69, 0x6e, 0x65, 0x73, 0x53, 0x65, + 0x72, 0x76, 0x69, 0x63, 0x65, 0x12, 0x76, 0x0a, 0x0b, 0x4c, 0x69, 0x73, 0x74, 0x45, 0x6e, 0x67, + 0x69, 0x6e, 0x65, 0x73, 0x12, 0x37, 0x2e, 0x73, 0x74, 0x61, 0x62, 0x69, 0x6c, 0x69, 0x74, 0x79, + 0x61, 0x69, 0x2e, 0x70, 0x6c, 0x61, 0x74, 0x66, 0x6f, 0x72, 0x6d, 0x61, 0x70, 0x69, 0x73, 0x2e, + 0x65, 0x6e, 0x67, 0x69, 0x6e, 0x65, 0x73, 0x2e, 0x76, 0x31, 0x2e, 0x4c, 0x69, 0x73, 0x74, 0x45, + 0x6e, 0x67, 0x69, 0x6e, 0x65, 0x73, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x2c, 0x2e, + 0x73, 0x74, 0x61, 0x62, 0x69, 0x6c, 0x69, 0x74, 0x79, 0x61, 0x69, 0x2e, 0x70, 0x6c, 0x61, 0x74, + 0x66, 0x6f, 0x72, 0x6d, 0x61, 0x70, 0x69, 0x73, 0x2e, 0x65, 0x6e, 0x67, 0x69, 0x6e, 0x65, 0x73, + 0x2e, 0x76, 0x31, 0x2e, 0x45, 0x6e, 0x67, 0x69, 0x6e, 0x65, 0x73, 0x22, 0x00, 0x42, 0xbe, 0x02, + 0x0a, 0x27, 0x63, 0x6f, 0x6d, 0x2e, 0x73, 0x74, 0x61, 0x62, 0x69, 0x6c, 0x69, 0x74, 0x79, 0x61, + 0x69, 0x2e, 0x70, 0x6c, 0x61, 0x74, 0x66, 0x6f, 0x72, 0x6d, 0x61, 0x70, 0x69, 0x73, 0x2e, 0x65, + 0x6e, 0x67, 0x69, 0x6e, 0x65, 0x73, 0x2e, 0x76, 0x31, 0x42, 0x0c, 0x45, 0x6e, 0x67, 0x69, 0x6e, + 0x65, 0x73, 0x50, 0x72, 0x6f, 0x74, 0x6f, 0x50, 0x01, 0x5a, 0x56, 0x67, 0x69, 0x74, 0x68, 0x75, + 0x62, 0x2e, 0x63, 0x6f, 0x6d, 0x2f, 0x73, 0x74, 0x61, 0x62, 0x69, 0x6c, 0x69, 0x74, 0x79, 0x2d, + 0x61, 0x69, 0x2f, 0x61, 0x70, 0x69, 0x2d, 0x69, 0x6e, 0x74, 0x65, 0x72, 0x66, 0x61, 0x63, 0x65, + 0x73, 0x2f, 0x73, 0x72, 0x63, 0x2f, 0x73, 0x74, 0x61, 0x62, 0x69, 0x6c, 0x69, 0x74, 0x79, 0x5f, + 0x61, 0x70, 0x69, 0x2f, 0x70, 0x6c, 0x61, 0x74, 0x66, 0x6f, 0x72, 0x6d, 0x2f, 0x65, 0x6e, 0x67, + 0x69, 0x6e, 0x65, 0x73, 0x2f, 0x76, 0x31, 0x3b, 0x65, 0x6e, 0x67, 0x69, 0x6e, 0x65, 0x73, 0x76, + 0x31, 0xa2, 0x02, 0x03, 0x53, 0x50, 0x45, 0xaa, 0x02, 0x23, 0x53, 0x74, 0x61, 0x62, 0x69, 0x6c, + 0x69, 0x74, 0x79, 0x61, 0x69, 0x2e, 0x50, 0x6c, 0x61, 0x74, 0x66, 0x6f, 0x72, 0x6d, 0x61, 0x70, + 0x69, 0x73, 0x2e, 0x45, 0x6e, 0x67, 0x69, 0x6e, 0x65, 0x73, 0x2e, 0x56, 0x31, 0xca, 0x02, 0x23, + 0x53, 0x74, 0x61, 0x62, 0x69, 0x6c, 0x69, 0x74, 0x79, 0x61, 0x69, 0x5c, 0x50, 0x6c, 0x61, 0x74, + 0x66, 0x6f, 0x72, 0x6d, 0x61, 0x70, 0x69, 0x73, 0x5c, 0x45, 0x6e, 0x67, 0x69, 0x6e, 0x65, 0x73, + 0x5c, 0x56, 0x31, 0xe2, 0x02, 0x2f, 0x53, 0x74, 0x61, 0x62, 0x69, 0x6c, 0x69, 0x74, 0x79, 0x61, + 0x69, 0x5c, 0x50, 0x6c, 0x61, 0x74, 0x66, 0x6f, 0x72, 0x6d, 0x61, 0x70, 0x69, 0x73, 0x5c, 0x45, + 0x6e, 0x67, 0x69, 0x6e, 0x65, 0x73, 0x5c, 0x56, 0x31, 0x5c, 0x47, 0x50, 0x42, 0x4d, 0x65, 0x74, + 0x61, 0x64, 0x61, 0x74, 0x61, 0xea, 0x02, 0x26, 0x53, 0x74, 0x61, 0x62, 0x69, 0x6c, 0x69, 0x74, + 0x79, 0x61, 0x69, 0x3a, 0x3a, 0x50, 0x6c, 0x61, 0x74, 0x66, 0x6f, 0x72, 0x6d, 0x61, 0x70, 0x69, + 0x73, 0x3a, 0x3a, 0x45, 0x6e, 0x67, 0x69, 0x6e, 0x65, 0x73, 0x3a, 0x3a, 0x56, 0x31, 0x62, 0x06, + 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x33, +} + +var ( + file_stability_api_platform_engines_v1_engines_proto_rawDescOnce sync.Once + file_stability_api_platform_engines_v1_engines_proto_rawDescData = file_stability_api_platform_engines_v1_engines_proto_rawDesc +) + +func file_stability_api_platform_engines_v1_engines_proto_rawDescGZIP() []byte { + file_stability_api_platform_engines_v1_engines_proto_rawDescOnce.Do(func() { + file_stability_api_platform_engines_v1_engines_proto_rawDescData = protoimpl.X.CompressGZIP(file_stability_api_platform_engines_v1_engines_proto_rawDescData) + }) + return file_stability_api_platform_engines_v1_engines_proto_rawDescData +} + +var file_stability_api_platform_engines_v1_engines_proto_enumTypes = make([]protoimpl.EnumInfo, 2) +var file_stability_api_platform_engines_v1_engines_proto_msgTypes = make([]protoimpl.MessageInfo, 3) +var file_stability_api_platform_engines_v1_engines_proto_goTypes = []interface{}{ + (EngineType)(0), // 0: stabilityai.platformapis.engines.v1.EngineType + (EngineTokenizer)(0), // 1: stabilityai.platformapis.engines.v1.EngineTokenizer + (*EngineInfo)(nil), // 2: stabilityai.platformapis.engines.v1.EngineInfo + (*ListEnginesRequest)(nil), // 3: stabilityai.platformapis.engines.v1.ListEnginesRequest + (*Engines)(nil), // 4: stabilityai.platformapis.engines.v1.Engines +} +var file_stability_api_platform_engines_v1_engines_proto_depIdxs = []int32{ + 0, // 0: stabilityai.platformapis.engines.v1.EngineInfo.type:type_name -> stabilityai.platformapis.engines.v1.EngineType + 1, // 1: stabilityai.platformapis.engines.v1.EngineInfo.tokenizer:type_name -> stabilityai.platformapis.engines.v1.EngineTokenizer + 2, // 2: stabilityai.platformapis.engines.v1.Engines.engine:type_name -> stabilityai.platformapis.engines.v1.EngineInfo + 3, // 3: stabilityai.platformapis.engines.v1.EnginesService.ListEngines:input_type -> stabilityai.platformapis.engines.v1.ListEnginesRequest + 4, // 4: stabilityai.platformapis.engines.v1.EnginesService.ListEngines:output_type -> stabilityai.platformapis.engines.v1.Engines + 4, // [4:5] is the sub-list for method output_type + 3, // [3:4] is the sub-list for method input_type + 3, // [3:3] is the sub-list for extension type_name + 3, // [3:3] is the sub-list for extension extendee + 0, // [0:3] is the sub-list for field type_name +} + +func init() { file_stability_api_platform_engines_v1_engines_proto_init() } +func file_stability_api_platform_engines_v1_engines_proto_init() { + if File_stability_api_platform_engines_v1_engines_proto != nil { + return + } + if !protoimpl.UnsafeEnabled { + file_stability_api_platform_engines_v1_engines_proto_msgTypes[0].Exporter = func(v interface{}, i int) interface{} { + switch v := v.(*EngineInfo); i { + case 0: + return &v.state + case 1: + return &v.sizeCache + case 2: + return &v.unknownFields + default: + return nil + } + } + file_stability_api_platform_engines_v1_engines_proto_msgTypes[1].Exporter = func(v interface{}, i int) interface{} { + switch v := v.(*ListEnginesRequest); i { + case 0: + return &v.state + case 1: + return &v.sizeCache + case 2: + return &v.unknownFields + default: + return nil + } + } + file_stability_api_platform_engines_v1_engines_proto_msgTypes[2].Exporter = func(v interface{}, i int) interface{} { + switch v := v.(*Engines); i { + case 0: + return &v.state + case 1: + return &v.sizeCache + case 2: + return &v.unknownFields + default: + return nil + } + } + } + type x struct{} + out := protoimpl.TypeBuilder{ + File: protoimpl.DescBuilder{ + GoPackagePath: reflect.TypeOf(x{}).PkgPath(), + RawDescriptor: file_stability_api_platform_engines_v1_engines_proto_rawDesc, + NumEnums: 2, + NumMessages: 3, + NumExtensions: 0, + NumServices: 1, + }, + GoTypes: file_stability_api_platform_engines_v1_engines_proto_goTypes, + DependencyIndexes: file_stability_api_platform_engines_v1_engines_proto_depIdxs, + EnumInfos: file_stability_api_platform_engines_v1_engines_proto_enumTypes, + MessageInfos: file_stability_api_platform_engines_v1_engines_proto_msgTypes, + }.Build() + File_stability_api_platform_engines_v1_engines_proto = out.File + file_stability_api_platform_engines_v1_engines_proto_rawDesc = nil + file_stability_api_platform_engines_v1_engines_proto_goTypes = nil + file_stability_api_platform_engines_v1_engines_proto_depIdxs = nil +} diff --git a/src/stability_api/platform/engines/v1/engines_connect.d.ts b/src/stability_api/platform/engines/v1/engines_connect.d.ts new file mode 100644 index 0000000..7905661 --- /dev/null +++ b/src/stability_api/platform/engines/v1/engines_connect.d.ts @@ -0,0 +1,26 @@ +// @generated by protoc-gen-connect-es v0.12.0 +// @generated from file stability_api/platform/engines/v1/engines.proto (package stabilityai.platformapis.engines.v1, syntax proto3) +/* eslint-disable */ +// @ts-nocheck + +import { Engines, ListEnginesRequest } from "./engines_pb.js"; +import { MethodKind } from "@bufbuild/protobuf"; + +/** + * @generated from service stabilityai.platformapis.engines.v1.EnginesService + */ +export declare const EnginesService: { + readonly typeName: "stabilityai.platformapis.engines.v1.EnginesService", + readonly methods: { + /** + * @generated from rpc stabilityai.platformapis.engines.v1.EnginesService.ListEngines + */ + readonly listEngines: { + readonly name: "ListEngines", + readonly I: typeof ListEnginesRequest, + readonly O: typeof Engines, + readonly kind: MethodKind.Unary, + }, + } +}; + diff --git a/src/stability_api/platform/engines/v1/engines_connect.js b/src/stability_api/platform/engines/v1/engines_connect.js new file mode 100644 index 0000000..b8f4259 --- /dev/null +++ b/src/stability_api/platform/engines/v1/engines_connect.js @@ -0,0 +1,26 @@ +// @generated by protoc-gen-connect-es v0.12.0 +// @generated from file stability_api/platform/engines/v1/engines.proto (package stabilityai.platformapis.engines.v1, syntax proto3) +/* eslint-disable */ +// @ts-nocheck + +import { Engines, ListEnginesRequest } from "./engines_pb.js"; +import { MethodKind } from "@bufbuild/protobuf"; + +/** + * @generated from service stabilityai.platformapis.engines.v1.EnginesService + */ +export const EnginesService = { + typeName: "stabilityai.platformapis.engines.v1.EnginesService", + methods: { + /** + * @generated from rpc stabilityai.platformapis.engines.v1.EnginesService.ListEngines + */ + listEngines: { + name: "ListEngines", + I: ListEnginesRequest, + O: Engines, + kind: MethodKind.Unary, + }, + } +}; + diff --git a/src/stability_api/platform/engines/v1/engines_grpc.pb.go b/src/stability_api/platform/engines/v1/engines_grpc.pb.go new file mode 100644 index 0000000..ff6f615 --- /dev/null +++ b/src/stability_api/platform/engines/v1/engines_grpc.pb.go @@ -0,0 +1,109 @@ +// Code generated by protoc-gen-go-grpc. DO NOT EDIT. +// versions: +// - protoc-gen-go-grpc v1.3.0 +// - protoc (unknown) +// source: stability_api/platform/engines/v1/engines.proto + +package enginesv1 + +import ( + context "context" + grpc "google.golang.org/grpc" + codes "google.golang.org/grpc/codes" + status "google.golang.org/grpc/status" +) + +// This is a compile-time assertion to ensure that this generated file +// is compatible with the grpc package it is being compiled against. +// Requires gRPC-Go v1.32.0 or later. +const _ = grpc.SupportPackageIsVersion7 + +const ( + EnginesService_ListEngines_FullMethodName = "/stabilityai.platformapis.engines.v1.EnginesService/ListEngines" +) + +// EnginesServiceClient is the client API for EnginesService service. +// +// For semantics around ctx use and closing/ending streaming RPCs, please refer to https://pkg.go.dev/google.golang.org/grpc/?tab=doc#ClientConn.NewStream. +type EnginesServiceClient interface { + ListEngines(ctx context.Context, in *ListEnginesRequest, opts ...grpc.CallOption) (*Engines, error) +} + +type enginesServiceClient struct { + cc grpc.ClientConnInterface +} + +func NewEnginesServiceClient(cc grpc.ClientConnInterface) EnginesServiceClient { + return &enginesServiceClient{cc} +} + +func (c *enginesServiceClient) ListEngines(ctx context.Context, in *ListEnginesRequest, opts ...grpc.CallOption) (*Engines, error) { + out := new(Engines) + err := c.cc.Invoke(ctx, EnginesService_ListEngines_FullMethodName, in, out, opts...) + if err != nil { + return nil, err + } + return out, nil +} + +// EnginesServiceServer is the server API for EnginesService service. +// All implementations must embed UnimplementedEnginesServiceServer +// for forward compatibility +type EnginesServiceServer interface { + ListEngines(context.Context, *ListEnginesRequest) (*Engines, error) + mustEmbedUnimplementedEnginesServiceServer() +} + +// UnimplementedEnginesServiceServer must be embedded to have forward compatible implementations. +type UnimplementedEnginesServiceServer struct { +} + +func (UnimplementedEnginesServiceServer) ListEngines(context.Context, *ListEnginesRequest) (*Engines, error) { + return nil, status.Errorf(codes.Unimplemented, "method ListEngines not implemented") +} +func (UnimplementedEnginesServiceServer) mustEmbedUnimplementedEnginesServiceServer() {} + +// UnsafeEnginesServiceServer may be embedded to opt out of forward compatibility for this service. +// Use of this interface is not recommended, as added methods to EnginesServiceServer will +// result in compilation errors. +type UnsafeEnginesServiceServer interface { + mustEmbedUnimplementedEnginesServiceServer() +} + +func RegisterEnginesServiceServer(s grpc.ServiceRegistrar, srv EnginesServiceServer) { + s.RegisterService(&EnginesService_ServiceDesc, srv) +} + +func _EnginesService_ListEngines_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) { + in := new(ListEnginesRequest) + if err := dec(in); err != nil { + return nil, err + } + if interceptor == nil { + return srv.(EnginesServiceServer).ListEngines(ctx, in) + } + info := &grpc.UnaryServerInfo{ + Server: srv, + FullMethod: EnginesService_ListEngines_FullMethodName, + } + handler := func(ctx context.Context, req interface{}) (interface{}, error) { + return srv.(EnginesServiceServer).ListEngines(ctx, req.(*ListEnginesRequest)) + } + return interceptor(ctx, in, info, handler) +} + +// EnginesService_ServiceDesc is the grpc.ServiceDesc for EnginesService service. +// It's only intended for direct use with grpc.RegisterService, +// and not to be introspected or modified (even as a copy) +var EnginesService_ServiceDesc = grpc.ServiceDesc{ + ServiceName: "stabilityai.platformapis.engines.v1.EnginesService", + HandlerType: (*EnginesServiceServer)(nil), + Methods: []grpc.MethodDesc{ + { + MethodName: "ListEngines", + Handler: _EnginesService_ListEngines_Handler, + }, + }, + Streams: []grpc.StreamDesc{}, + Metadata: "stability_api/platform/engines/v1/engines.proto", +} diff --git a/src/stability_api/platform/engines/v1/engines_pb.d.ts b/src/stability_api/platform/engines/v1/engines_pb.d.ts new file mode 100644 index 0000000..13c0d17 --- /dev/null +++ b/src/stability_api/platform/engines/v1/engines_pb.d.ts @@ -0,0 +1,175 @@ +// @generated by protoc-gen-es v1.3.0 +// @generated from file stability_api/platform/engines/v1/engines.proto (package stabilityai.platformapis.engines.v1, syntax proto3) +/* eslint-disable */ +// @ts-nocheck + +import type { BinaryReadOptions, FieldList, JsonReadOptions, JsonValue, PartialMessage, PlainMessage } from "@bufbuild/protobuf"; +import { Message, proto3 } from "@bufbuild/protobuf"; + +/** + * Possible engine type + * + * @generated from enum stabilityai.platformapis.engines.v1.EngineType + */ +export declare enum EngineType { + /** + * @generated from enum value: TEXT = 0; + */ + TEXT = 0, + + /** + * @generated from enum value: PICTURE = 1; + */ + PICTURE = 1, + + /** + * @generated from enum value: AUDIO = 2; + */ + AUDIO = 2, + + /** + * @generated from enum value: VIDEO = 3; + */ + VIDEO = 3, + + /** + * @generated from enum value: CLASSIFICATION = 4; + */ + CLASSIFICATION = 4, + + /** + * @generated from enum value: STORAGE = 5; + */ + STORAGE = 5, +} + +/** + * @generated from enum stabilityai.platformapis.engines.v1.EngineTokenizer + */ +export declare enum EngineTokenizer { + /** + * @generated from enum value: GPT2 = 0; + */ + GPT2 = 0, + + /** + * @generated from enum value: PILE = 1; + */ + PILE = 1, +} + +/** + * Engine info struct + * + * @generated from message stabilityai.platformapis.engines.v1.EngineInfo + */ +export declare class EngineInfo extends Message { + /** + * @generated from field: string id = 1; + */ + id: string; + + /** + * @generated from field: string owner = 2; + */ + owner: string; + + /** + * @generated from field: bool ready = 3; + */ + ready: boolean; + + /** + * @generated from field: stabilityai.platformapis.engines.v1.EngineType type = 4; + */ + type: EngineType; + + /** + * @generated from field: stabilityai.platformapis.engines.v1.EngineTokenizer tokenizer = 5; + */ + tokenizer: EngineTokenizer; + + /** + * @generated from field: string name = 6; + */ + name: string; + + /** + * @generated from field: string description = 7; + */ + description: string; + + /** + * @generated from field: bool can_fine_tune = 8; + */ + canFineTune: boolean; + + /** + * Whether this Engine supports T2I Adapters + * + * @generated from field: bool is_adaptive = 9; + */ + isAdaptive: boolean; + + constructor(data?: PartialMessage); + + static readonly runtime: typeof proto3; + static readonly typeName = "stabilityai.platformapis.engines.v1.EngineInfo"; + static readonly fields: FieldList; + + static fromBinary(bytes: Uint8Array, options?: Partial): EngineInfo; + + static fromJson(jsonValue: JsonValue, options?: Partial): EngineInfo; + + static fromJsonString(jsonString: string, options?: Partial): EngineInfo; + + static equals(a: EngineInfo | PlainMessage | undefined, b: EngineInfo | PlainMessage | undefined): boolean; +} + +/** + * Empty + * + * @generated from message stabilityai.platformapis.engines.v1.ListEnginesRequest + */ +export declare class ListEnginesRequest extends Message { + constructor(data?: PartialMessage); + + static readonly runtime: typeof proto3; + static readonly typeName = "stabilityai.platformapis.engines.v1.ListEnginesRequest"; + static readonly fields: FieldList; + + static fromBinary(bytes: Uint8Array, options?: Partial): ListEnginesRequest; + + static fromJson(jsonValue: JsonValue, options?: Partial): ListEnginesRequest; + + static fromJsonString(jsonString: string, options?: Partial): ListEnginesRequest; + + static equals(a: ListEnginesRequest | PlainMessage | undefined, b: ListEnginesRequest | PlainMessage | undefined): boolean; +} + +/** + * Engine info list + * + * @generated from message stabilityai.platformapis.engines.v1.Engines + */ +export declare class Engines extends Message { + /** + * @generated from field: repeated stabilityai.platformapis.engines.v1.EngineInfo engine = 1; + */ + engine: EngineInfo[]; + + constructor(data?: PartialMessage); + + static readonly runtime: typeof proto3; + static readonly typeName = "stabilityai.platformapis.engines.v1.Engines"; + static readonly fields: FieldList; + + static fromBinary(bytes: Uint8Array, options?: Partial): Engines; + + static fromJson(jsonValue: JsonValue, options?: Partial): Engines; + + static fromJsonString(jsonString: string, options?: Partial): Engines; + + static equals(a: Engines | PlainMessage | undefined, b: Engines | PlainMessage | undefined): boolean; +} + diff --git a/src/stability_api/platform/engines/v1/engines_pb.js b/src/stability_api/platform/engines/v1/engines_pb.js new file mode 100644 index 0000000..2c9f820 --- /dev/null +++ b/src/stability_api/platform/engines/v1/engines_pb.js @@ -0,0 +1,77 @@ +// @generated by protoc-gen-es v1.3.0 +// @generated from file stability_api/platform/engines/v1/engines.proto (package stabilityai.platformapis.engines.v1, syntax proto3) +/* eslint-disable */ +// @ts-nocheck + +import { proto3 } from "@bufbuild/protobuf"; + +/** + * Possible engine type + * + * @generated from enum stabilityai.platformapis.engines.v1.EngineType + */ +export const EngineType = proto3.makeEnum( + "stabilityai.platformapis.engines.v1.EngineType", + [ + {no: 0, name: "TEXT"}, + {no: 1, name: "PICTURE"}, + {no: 2, name: "AUDIO"}, + {no: 3, name: "VIDEO"}, + {no: 4, name: "CLASSIFICATION"}, + {no: 5, name: "STORAGE"}, + ], +); + +/** + * @generated from enum stabilityai.platformapis.engines.v1.EngineTokenizer + */ +export const EngineTokenizer = proto3.makeEnum( + "stabilityai.platformapis.engines.v1.EngineTokenizer", + [ + {no: 0, name: "GPT2"}, + {no: 1, name: "PILE"}, + ], +); + +/** + * Engine info struct + * + * @generated from message stabilityai.platformapis.engines.v1.EngineInfo + */ +export const EngineInfo = proto3.makeMessageType( + "stabilityai.platformapis.engines.v1.EngineInfo", + () => [ + { no: 1, name: "id", kind: "scalar", T: 9 /* ScalarType.STRING */ }, + { no: 2, name: "owner", kind: "scalar", T: 9 /* ScalarType.STRING */ }, + { no: 3, name: "ready", kind: "scalar", T: 8 /* ScalarType.BOOL */ }, + { no: 4, name: "type", kind: "enum", T: proto3.getEnumType(EngineType) }, + { no: 5, name: "tokenizer", kind: "enum", T: proto3.getEnumType(EngineTokenizer) }, + { no: 6, name: "name", kind: "scalar", T: 9 /* ScalarType.STRING */ }, + { no: 7, name: "description", kind: "scalar", T: 9 /* ScalarType.STRING */ }, + { no: 8, name: "can_fine_tune", kind: "scalar", T: 8 /* ScalarType.BOOL */ }, + { no: 9, name: "is_adaptive", kind: "scalar", T: 8 /* ScalarType.BOOL */ }, + ], +); + +/** + * Empty + * + * @generated from message stabilityai.platformapis.engines.v1.ListEnginesRequest + */ +export const ListEnginesRequest = proto3.makeMessageType( + "stabilityai.platformapis.engines.v1.ListEnginesRequest", + [], +); + +/** + * Engine info list + * + * @generated from message stabilityai.platformapis.engines.v1.Engines + */ +export const Engines = proto3.makeMessageType( + "stabilityai.platformapis.engines.v1.Engines", + () => [ + { no: 1, name: "engine", kind: "message", T: EngineInfo, repeated: true }, + ], +); + diff --git a/src/stability_api/platform/engines/v1/engines_pb2.py b/src/stability_api/platform/engines/v1/engines_pb2.py new file mode 100644 index 0000000..b0de325 --- /dev/null +++ b/src/stability_api/platform/engines/v1/engines_pb2.py @@ -0,0 +1,37 @@ +# -*- coding: utf-8 -*- +# Generated by the protocol buffer compiler. DO NOT EDIT! +# source: stability_api/platform/engines/v1/engines.proto +"""Generated protocol buffer code.""" +from google.protobuf import descriptor as _descriptor +from google.protobuf import descriptor_pool as _descriptor_pool +from google.protobuf import symbol_database as _symbol_database +from google.protobuf.internal import builder as _builder +# @@protoc_insertion_point(imports) + +_sym_db = _symbol_database.Default() + + + + +DESCRIPTOR = _descriptor_pool.Default().AddSerializedFile(b'\n/stability_api/platform/engines/v1/engines.proto\x12#stabilityai.platformapis.engines.v1\"\xdc\x02\n\nEngineInfo\x12\x0e\n\x02id\x18\x01 \x01(\tR\x02id\x12\x14\n\x05owner\x18\x02 \x01(\tR\x05owner\x12\x14\n\x05ready\x18\x03 \x01(\x08R\x05ready\x12\x43\n\x04type\x18\x04 \x01(\x0e\x32/.stabilityai.platformapis.engines.v1.EngineTypeR\x04type\x12R\n\ttokenizer\x18\x05 \x01(\x0e\x32\x34.stabilityai.platformapis.engines.v1.EngineTokenizerR\ttokenizer\x12\x12\n\x04name\x18\x06 \x01(\tR\x04name\x12 \n\x0b\x64\x65scription\x18\x07 \x01(\tR\x0b\x64\x65scription\x12\"\n\rcan_fine_tune\x18\x08 \x01(\x08R\x0b\x63\x61nFineTune\x12\x1f\n\x0bis_adaptive\x18\t \x01(\x08R\nisAdaptive\"\x14\n\x12ListEnginesRequest\"R\n\x07\x45ngines\x12G\n\x06\x65ngine\x18\x01 \x03(\x0b\x32/.stabilityai.platformapis.engines.v1.EngineInfoR\x06\x65ngine*Z\n\nEngineType\x12\x08\n\x04TEXT\x10\x00\x12\x0b\n\x07PICTURE\x10\x01\x12\t\n\x05\x41UDIO\x10\x02\x12\t\n\x05VIDEO\x10\x03\x12\x12\n\x0e\x43LASSIFICATION\x10\x04\x12\x0b\n\x07STORAGE\x10\x05*%\n\x0f\x45ngineTokenizer\x12\x08\n\x04GPT2\x10\x00\x12\x08\n\x04PILE\x10\x01\x32\x88\x01\n\x0e\x45nginesService\x12v\n\x0bListEngines\x12\x37.stabilityai.platformapis.engines.v1.ListEnginesRequest\x1a,.stabilityai.platformapis.engines.v1.Engines\"\x00\x42\xc7\x02\n\'com.stabilityai.platformapis.engines.v1B\x0c\x45nginesProtoP\x01Z_github.com/stability-ai/api-interfaces/gen/proto/go/stability_api/platform/engines/v1;enginesv1\xa2\x02\x03SPE\xaa\x02#Stabilityai.Platformapis.Engines.V1\xca\x02#Stabilityai\\Platformapis\\Engines\\V1\xe2\x02/Stabilityai\\Platformapis\\Engines\\V1\\GPBMetadata\xea\x02&Stabilityai::Platformapis::Engines::V1b\x06proto3') + +_globals = globals() +_builder.BuildMessageAndEnumDescriptors(DESCRIPTOR, _globals) +_builder.BuildTopDescriptorsAndMessages(DESCRIPTOR, 'stability_api.platform.engines.v1.engines_pb2', _globals) +if _descriptor._USE_C_DESCRIPTORS == False: + + DESCRIPTOR._options = None + DESCRIPTOR._serialized_options = b'\n\'com.stabilityai.platformapis.engines.v1B\014EnginesProtoP\001Z_github.com/stability-ai/api-interfaces/gen/proto/go/stability_api/platform/engines/v1;enginesv1\242\002\003SPE\252\002#Stabilityai.Platformapis.Engines.V1\312\002#Stabilityai\\Platformapis\\Engines\\V1\342\002/Stabilityai\\Platformapis\\Engines\\V1\\GPBMetadata\352\002&Stabilityai::Platformapis::Engines::V1' + _globals['_ENGINETYPE']._serialized_start=545 + _globals['_ENGINETYPE']._serialized_end=635 + _globals['_ENGINETOKENIZER']._serialized_start=637 + _globals['_ENGINETOKENIZER']._serialized_end=674 + _globals['_ENGINEINFO']._serialized_start=89 + _globals['_ENGINEINFO']._serialized_end=437 + _globals['_LISTENGINESREQUEST']._serialized_start=439 + _globals['_LISTENGINESREQUEST']._serialized_end=459 + _globals['_ENGINES']._serialized_start=461 + _globals['_ENGINES']._serialized_end=543 + _globals['_ENGINESSERVICE']._serialized_start=677 + _globals['_ENGINESSERVICE']._serialized_end=813 +# @@protoc_insertion_point(module_scope) diff --git a/src/stability_api/platform/engines/v1/engines_pb2.pyi b/src/stability_api/platform/engines/v1/engines_pb2.pyi new file mode 100644 index 0000000..e8a3cbd --- /dev/null +++ b/src/stability_api/platform/engines/v1/engines_pb2.pyi @@ -0,0 +1,61 @@ +from google.protobuf.internal import containers as _containers +from google.protobuf.internal import enum_type_wrapper as _enum_type_wrapper +from google.protobuf import descriptor as _descriptor +from google.protobuf import message as _message +from typing import ClassVar as _ClassVar, Iterable as _Iterable, Mapping as _Mapping, Optional as _Optional, Union as _Union + +DESCRIPTOR: _descriptor.FileDescriptor + +class EngineType(int, metaclass=_enum_type_wrapper.EnumTypeWrapper): + __slots__ = [] + TEXT: _ClassVar[EngineType] + PICTURE: _ClassVar[EngineType] + AUDIO: _ClassVar[EngineType] + VIDEO: _ClassVar[EngineType] + CLASSIFICATION: _ClassVar[EngineType] + STORAGE: _ClassVar[EngineType] + +class EngineTokenizer(int, metaclass=_enum_type_wrapper.EnumTypeWrapper): + __slots__ = [] + GPT2: _ClassVar[EngineTokenizer] + PILE: _ClassVar[EngineTokenizer] +TEXT: EngineType +PICTURE: EngineType +AUDIO: EngineType +VIDEO: EngineType +CLASSIFICATION: EngineType +STORAGE: EngineType +GPT2: EngineTokenizer +PILE: EngineTokenizer + +class EngineInfo(_message.Message): + __slots__ = ["id", "owner", "ready", "type", "tokenizer", "name", "description", "can_fine_tune", "is_adaptive"] + ID_FIELD_NUMBER: _ClassVar[int] + OWNER_FIELD_NUMBER: _ClassVar[int] + READY_FIELD_NUMBER: _ClassVar[int] + TYPE_FIELD_NUMBER: _ClassVar[int] + TOKENIZER_FIELD_NUMBER: _ClassVar[int] + NAME_FIELD_NUMBER: _ClassVar[int] + DESCRIPTION_FIELD_NUMBER: _ClassVar[int] + CAN_FINE_TUNE_FIELD_NUMBER: _ClassVar[int] + IS_ADAPTIVE_FIELD_NUMBER: _ClassVar[int] + id: str + owner: str + ready: bool + type: EngineType + tokenizer: EngineTokenizer + name: str + description: str + can_fine_tune: bool + is_adaptive: bool + def __init__(self, id: _Optional[str] = ..., owner: _Optional[str] = ..., ready: bool = ..., type: _Optional[_Union[EngineType, str]] = ..., tokenizer: _Optional[_Union[EngineTokenizer, str]] = ..., name: _Optional[str] = ..., description: _Optional[str] = ..., can_fine_tune: bool = ..., is_adaptive: bool = ...) -> None: ... + +class ListEnginesRequest(_message.Message): + __slots__ = [] + def __init__(self) -> None: ... + +class Engines(_message.Message): + __slots__ = ["engine"] + ENGINE_FIELD_NUMBER: _ClassVar[int] + engine: _containers.RepeatedCompositeFieldContainer[EngineInfo] + def __init__(self, engine: _Optional[_Iterable[_Union[EngineInfo, _Mapping]]] = ...) -> None: ... diff --git a/src/stability_api/platform/engines/v1/engines_pb2_grpc.py b/src/stability_api/platform/engines/v1/engines_pb2_grpc.py new file mode 100644 index 0000000..76c560e --- /dev/null +++ b/src/stability_api/platform/engines/v1/engines_pb2_grpc.py @@ -0,0 +1,66 @@ +# Generated by the gRPC Python protocol compiler plugin. DO NOT EDIT! +"""Client and server classes corresponding to protobuf-defined services.""" +import grpc + +from stability_api.platform.engines.v1 import engines_pb2 as stability__api_dot_platform_dot_engines_dot_v1_dot_engines__pb2 + + +class EnginesServiceStub(object): + """Missing associated documentation comment in .proto file.""" + + def __init__(self, channel): + """Constructor. + + Args: + channel: A grpc.Channel. + """ + self.ListEngines = channel.unary_unary( + '/stabilityai.platformapis.engines.v1.EnginesService/ListEngines', + request_serializer=stability__api_dot_platform_dot_engines_dot_v1_dot_engines__pb2.ListEnginesRequest.SerializeToString, + response_deserializer=stability__api_dot_platform_dot_engines_dot_v1_dot_engines__pb2.Engines.FromString, + ) + + +class EnginesServiceServicer(object): + """Missing associated documentation comment in .proto file.""" + + def ListEngines(self, request, context): + """Missing associated documentation comment in .proto file.""" + context.set_code(grpc.StatusCode.UNIMPLEMENTED) + context.set_details('Method not implemented!') + raise NotImplementedError('Method not implemented!') + + +def add_EnginesServiceServicer_to_server(servicer, server): + rpc_method_handlers = { + 'ListEngines': grpc.unary_unary_rpc_method_handler( + servicer.ListEngines, + request_deserializer=stability__api_dot_platform_dot_engines_dot_v1_dot_engines__pb2.ListEnginesRequest.FromString, + response_serializer=stability__api_dot_platform_dot_engines_dot_v1_dot_engines__pb2.Engines.SerializeToString, + ), + } + generic_handler = grpc.method_handlers_generic_handler( + 'stabilityai.platformapis.engines.v1.EnginesService', rpc_method_handlers) + server.add_generic_rpc_handlers((generic_handler,)) + + + # This class is part of an EXPERIMENTAL API. +class EnginesService(object): + """Missing associated documentation comment in .proto file.""" + + @staticmethod + def ListEngines(request, + target, + options=(), + channel_credentials=None, + call_credentials=None, + insecure=False, + compression=None, + wait_for_ready=None, + timeout=None, + metadata=None): + return grpc.experimental.unary_unary(request, target, '/stabilityai.platformapis.engines.v1.EnginesService/ListEngines', + stability__api_dot_platform_dot_engines_dot_v1_dot_engines__pb2.ListEnginesRequest.SerializeToString, + stability__api_dot_platform_dot_engines_dot_v1_dot_engines__pb2.Engines.FromString, + options, channel_credentials, + insecure, call_credentials, compression, wait_for_ready, timeout, metadata) diff --git a/src/stability_api/platform/engines/v1/enginesv1connect/engines.connect.go b/src/stability_api/platform/engines/v1/enginesv1connect/engines.connect.go new file mode 100644 index 0000000..9883075 --- /dev/null +++ b/src/stability_api/platform/engines/v1/enginesv1connect/engines.connect.go @@ -0,0 +1,108 @@ +// Code generated by protoc-gen-connect-go. DO NOT EDIT. +// +// Source: stability_api/platform/engines/v1/engines.proto + +package enginesv1connect + +import ( + connect "connectrpc.com/connect" + context "context" + errors "errors" + v1 "github.com/stability-ai/api-interfaces/src/stability_api/platform/engines/v1" + http "net/http" + strings "strings" +) + +// This is a compile-time assertion to ensure that this generated file and the connect package are +// compatible. If you get a compiler error that this constant is not defined, this code was +// generated with a version of connect newer than the one compiled into your binary. You can fix the +// problem by either regenerating this code with an older version of connect or updating the connect +// version compiled into your binary. +const _ = connect.IsAtLeastVersion0_1_0 + +const ( + // EnginesServiceName is the fully-qualified name of the EnginesService service. + EnginesServiceName = "stabilityai.platformapis.engines.v1.EnginesService" +) + +// These constants are the fully-qualified names of the RPCs defined in this package. They're +// exposed at runtime as Spec.Procedure and as the final two segments of the HTTP route. +// +// Note that these are different from the fully-qualified method names used by +// google.golang.org/protobuf/reflect/protoreflect. To convert from these constants to +// reflection-formatted method names, remove the leading slash and convert the remaining slash to a +// period. +const ( + // EnginesServiceListEnginesProcedure is the fully-qualified name of the EnginesService's + // ListEngines RPC. + EnginesServiceListEnginesProcedure = "/stabilityai.platformapis.engines.v1.EnginesService/ListEngines" +) + +// EnginesServiceClient is a client for the stabilityai.platformapis.engines.v1.EnginesService +// service. +type EnginesServiceClient interface { + ListEngines(context.Context, *connect.Request[v1.ListEnginesRequest]) (*connect.Response[v1.Engines], error) +} + +// NewEnginesServiceClient constructs a client for the +// stabilityai.platformapis.engines.v1.EnginesService service. By default, it uses the Connect +// protocol with the binary Protobuf Codec, asks for gzipped responses, and sends uncompressed +// requests. To use the gRPC or gRPC-Web protocols, supply the connect.WithGRPC() or +// connect.WithGRPCWeb() options. +// +// The URL supplied here should be the base URL for the Connect or gRPC server (for example, +// http://api.acme.com or https://acme.com/grpc). +func NewEnginesServiceClient(httpClient connect.HTTPClient, baseURL string, opts ...connect.ClientOption) EnginesServiceClient { + baseURL = strings.TrimRight(baseURL, "/") + return &enginesServiceClient{ + listEngines: connect.NewClient[v1.ListEnginesRequest, v1.Engines]( + httpClient, + baseURL+EnginesServiceListEnginesProcedure, + opts..., + ), + } +} + +// enginesServiceClient implements EnginesServiceClient. +type enginesServiceClient struct { + listEngines *connect.Client[v1.ListEnginesRequest, v1.Engines] +} + +// ListEngines calls stabilityai.platformapis.engines.v1.EnginesService.ListEngines. +func (c *enginesServiceClient) ListEngines(ctx context.Context, req *connect.Request[v1.ListEnginesRequest]) (*connect.Response[v1.Engines], error) { + return c.listEngines.CallUnary(ctx, req) +} + +// EnginesServiceHandler is an implementation of the +// stabilityai.platformapis.engines.v1.EnginesService service. +type EnginesServiceHandler interface { + ListEngines(context.Context, *connect.Request[v1.ListEnginesRequest]) (*connect.Response[v1.Engines], error) +} + +// NewEnginesServiceHandler builds an HTTP handler from the service implementation. It returns the +// path on which to mount the handler and the handler itself. +// +// By default, handlers support the Connect, gRPC, and gRPC-Web protocols with the binary Protobuf +// and JSON codecs. They also support gzip compression. +func NewEnginesServiceHandler(svc EnginesServiceHandler, opts ...connect.HandlerOption) (string, http.Handler) { + enginesServiceListEnginesHandler := connect.NewUnaryHandler( + EnginesServiceListEnginesProcedure, + svc.ListEngines, + opts..., + ) + return "/stabilityai.platformapis.engines.v1.EnginesService/", http.HandlerFunc(func(w http.ResponseWriter, r *http.Request) { + switch r.URL.Path { + case EnginesServiceListEnginesProcedure: + enginesServiceListEnginesHandler.ServeHTTP(w, r) + default: + http.NotFound(w, r) + } + }) +} + +// UnimplementedEnginesServiceHandler returns CodeUnimplemented from all methods. +type UnimplementedEnginesServiceHandler struct{} + +func (UnimplementedEnginesServiceHandler) ListEngines(context.Context, *connect.Request[v1.ListEnginesRequest]) (*connect.Response[v1.Engines], error) { + return nil, connect.NewError(connect.CodeUnimplemented, errors.New("stabilityai.platformapis.engines.v1.EnginesService.ListEngines is not implemented")) +} diff --git a/src/stability_api/platform/finetuning/finetuning.pb.go b/src/stability_api/platform/finetuning/finetuning.pb.go new file mode 100644 index 0000000..ea7a28f --- /dev/null +++ b/src/stability_api/platform/finetuning/finetuning.pb.go @@ -0,0 +1,1340 @@ +// Code generated by protoc-gen-go. DO NOT EDIT. +// versions: +// protoc-gen-go v1.31.0 +// protoc (unknown) +// source: stability_api/platform/finetuning/finetuning.proto + +package finetuning + +import ( + protoreflect "google.golang.org/protobuf/reflect/protoreflect" + protoimpl "google.golang.org/protobuf/runtime/protoimpl" + structpb "google.golang.org/protobuf/types/known/structpb" + reflect "reflect" + sync "sync" +) + +const ( + // Verify that this generated code is sufficiently up-to-date. + _ = protoimpl.EnforceVersion(20 - protoimpl.MinVersion) + // Verify that runtime/protoimpl is sufficiently up-to-date. + _ = protoimpl.EnforceVersion(protoimpl.MaxVersion - 20) +) + +type FineTuningMode int32 + +const ( + FineTuningMode_FINE_TUNING_MODE_UNSPECIFIED FineTuningMode = 0 // No mode specified + FineTuningMode_FINE_TUNING_MODE_FACE FineTuningMode = 1 // Fine tuning a face model + FineTuningMode_FINE_TUNING_MODE_STYLE FineTuningMode = 2 // Fine tuning a style model + FineTuningMode_FINE_TUNING_MODE_OBJECT FineTuningMode = 3 // Fine tuning an object model +) + +// Enum value maps for FineTuningMode. +var ( + FineTuningMode_name = map[int32]string{ + 0: "FINE_TUNING_MODE_UNSPECIFIED", + 1: "FINE_TUNING_MODE_FACE", + 2: "FINE_TUNING_MODE_STYLE", + 3: "FINE_TUNING_MODE_OBJECT", + } + FineTuningMode_value = map[string]int32{ + "FINE_TUNING_MODE_UNSPECIFIED": 0, + "FINE_TUNING_MODE_FACE": 1, + "FINE_TUNING_MODE_STYLE": 2, + "FINE_TUNING_MODE_OBJECT": 3, + } +) + +func (x FineTuningMode) Enum() *FineTuningMode { + p := new(FineTuningMode) + *p = x + return p +} + +func (x FineTuningMode) String() string { + return protoimpl.X.EnumStringOf(x.Descriptor(), protoreflect.EnumNumber(x)) +} + +func (FineTuningMode) Descriptor() protoreflect.EnumDescriptor { + return file_stability_api_platform_finetuning_finetuning_proto_enumTypes[0].Descriptor() +} + +func (FineTuningMode) Type() protoreflect.EnumType { + return &file_stability_api_platform_finetuning_finetuning_proto_enumTypes[0] +} + +func (x FineTuningMode) Number() protoreflect.EnumNumber { + return protoreflect.EnumNumber(x) +} + +// Deprecated: Use FineTuningMode.Descriptor instead. +func (FineTuningMode) EnumDescriptor() ([]byte, []int) { + return file_stability_api_platform_finetuning_finetuning_proto_rawDescGZIP(), []int{0} +} + +type FineTuningStatus int32 + +const ( + FineTuningStatus_FINE_TUNING_STATUS_NOT_STARTED FineTuningStatus = 0 // Model not yet started + FineTuningStatus_FINE_TUNING_STATUS_RUNNING FineTuningStatus = 1 // Model is currently running + FineTuningStatus_FINE_TUNING_STATUS_COMPLETED FineTuningStatus = 2 // Model has completed successfully + FineTuningStatus_FINE_TUNING_STATUS_FAILED FineTuningStatus = 3 // Model has failed + FineTuningStatus_FINE_TUNING_STATUS_SUBMITTED FineTuningStatus = 4 // Model has been submitted +) + +// Enum value maps for FineTuningStatus. +var ( + FineTuningStatus_name = map[int32]string{ + 0: "FINE_TUNING_STATUS_NOT_STARTED", + 1: "FINE_TUNING_STATUS_RUNNING", + 2: "FINE_TUNING_STATUS_COMPLETED", + 3: "FINE_TUNING_STATUS_FAILED", + 4: "FINE_TUNING_STATUS_SUBMITTED", + } + FineTuningStatus_value = map[string]int32{ + "FINE_TUNING_STATUS_NOT_STARTED": 0, + "FINE_TUNING_STATUS_RUNNING": 1, + "FINE_TUNING_STATUS_COMPLETED": 2, + "FINE_TUNING_STATUS_FAILED": 3, + "FINE_TUNING_STATUS_SUBMITTED": 4, + } +) + +func (x FineTuningStatus) Enum() *FineTuningStatus { + p := new(FineTuningStatus) + *p = x + return p +} + +func (x FineTuningStatus) String() string { + return protoimpl.X.EnumStringOf(x.Descriptor(), protoreflect.EnumNumber(x)) +} + +func (FineTuningStatus) Descriptor() protoreflect.EnumDescriptor { + return file_stability_api_platform_finetuning_finetuning_proto_enumTypes[1].Descriptor() +} + +func (FineTuningStatus) Type() protoreflect.EnumType { + return &file_stability_api_platform_finetuning_finetuning_proto_enumTypes[1] +} + +func (x FineTuningStatus) Number() protoreflect.EnumNumber { + return protoreflect.EnumNumber(x) +} + +// Deprecated: Use FineTuningStatus.Descriptor instead. +func (FineTuningStatus) EnumDescriptor() ([]byte, []int) { + return file_stability_api_platform_finetuning_finetuning_proto_rawDescGZIP(), []int{1} +} + +type FineTuningModel struct { + state protoimpl.MessageState + sizeCache protoimpl.SizeCache + unknownFields protoimpl.UnknownFields + + Id string `protobuf:"bytes,1,opt,name=id,proto3" json:"id,omitempty"` // ID of the model, UUIDv4 + UserId string `protobuf:"bytes,2,opt,name=user_id,json=userId,proto3" json:"user_id,omitempty"` // ID of user who created the model + Name string `protobuf:"bytes,3,opt,name=name,proto3" json:"name,omitempty"` // a readable model name + Mode *FineTuningMode `protobuf:"varint,4,opt,name=mode,proto3,enum=gooseai.FineTuningMode,oneof" json:"mode,omitempty"` // the mode of the model + ObjectPrompt *string `protobuf:"bytes,5,opt,name=object_prompt,json=objectPrompt,proto3,oneof" json:"object_prompt,omitempty"` // freeform text description of object, should only be set when mode is OBJECT + ProjectId string `protobuf:"bytes,6,opt,name=project_id,json=projectId,proto3" json:"project_id,omitempty"` // project ID with assets to be used for fine tuning + Duration float64 `protobuf:"fixed64,7,opt,name=duration,proto3" json:"duration,omitempty"` // duration in seconds for how long the model took to train + Status FineTuningStatus `protobuf:"varint,8,opt,name=status,proto3,enum=gooseai.FineTuningStatus" json:"status,omitempty"` // the current status of the model + EngineId string `protobuf:"bytes,9,opt,name=engine_id,json=engineId,proto3" json:"engine_id,omitempty"` // the engineId of a fine-tuneable Stability model + FailureReason *string `protobuf:"bytes,10,opt,name=failure_reason,json=failureReason,proto3,oneof" json:"failure_reason,omitempty"` // If a model's training failed, this will contain the reason +} + +func (x *FineTuningModel) Reset() { + *x = FineTuningModel{} + if protoimpl.UnsafeEnabled { + mi := &file_stability_api_platform_finetuning_finetuning_proto_msgTypes[0] + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + ms.StoreMessageInfo(mi) + } +} + +func (x *FineTuningModel) String() string { + return protoimpl.X.MessageStringOf(x) +} + +func (*FineTuningModel) ProtoMessage() {} + +func (x *FineTuningModel) ProtoReflect() protoreflect.Message { + mi := &file_stability_api_platform_finetuning_finetuning_proto_msgTypes[0] + if protoimpl.UnsafeEnabled && x != nil { + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + if ms.LoadMessageInfo() == nil { + ms.StoreMessageInfo(mi) + } + return ms + } + return mi.MessageOf(x) +} + +// Deprecated: Use FineTuningModel.ProtoReflect.Descriptor instead. +func (*FineTuningModel) Descriptor() ([]byte, []int) { + return file_stability_api_platform_finetuning_finetuning_proto_rawDescGZIP(), []int{0} +} + +func (x *FineTuningModel) GetId() string { + if x != nil { + return x.Id + } + return "" +} + +func (x *FineTuningModel) GetUserId() string { + if x != nil { + return x.UserId + } + return "" +} + +func (x *FineTuningModel) GetName() string { + if x != nil { + return x.Name + } + return "" +} + +func (x *FineTuningModel) GetMode() FineTuningMode { + if x != nil && x.Mode != nil { + return *x.Mode + } + return FineTuningMode_FINE_TUNING_MODE_UNSPECIFIED +} + +func (x *FineTuningModel) GetObjectPrompt() string { + if x != nil && x.ObjectPrompt != nil { + return *x.ObjectPrompt + } + return "" +} + +func (x *FineTuningModel) GetProjectId() string { + if x != nil { + return x.ProjectId + } + return "" +} + +func (x *FineTuningModel) GetDuration() float64 { + if x != nil { + return x.Duration + } + return 0 +} + +func (x *FineTuningModel) GetStatus() FineTuningStatus { + if x != nil { + return x.Status + } + return FineTuningStatus_FINE_TUNING_STATUS_NOT_STARTED +} + +func (x *FineTuningModel) GetEngineId() string { + if x != nil { + return x.EngineId + } + return "" +} + +func (x *FineTuningModel) GetFailureReason() string { + if x != nil && x.FailureReason != nil { + return *x.FailureReason + } + return "" +} + +type CreateModelRequest struct { + state protoimpl.MessageState + sizeCache protoimpl.SizeCache + unknownFields protoimpl.UnknownFields + + Name string `protobuf:"bytes,1,opt,name=name,proto3" json:"name,omitempty"` // a readable model name + Mode *FineTuningMode `protobuf:"varint,2,opt,name=mode,proto3,enum=gooseai.FineTuningMode,oneof" json:"mode,omitempty"` // the mode of the model + ObjectPrompt *string `protobuf:"bytes,3,opt,name=object_prompt,json=objectPrompt,proto3,oneof" json:"object_prompt,omitempty"` // freeform text description of object, should only be set when mode is OBJECT + ProjectId string `protobuf:"bytes,4,opt,name=project_id,json=projectId,proto3" json:"project_id,omitempty"` // the project_id with assets to be used for fine tuning + EngineId string `protobuf:"bytes,5,opt,name=engine_id,json=engineId,proto3" json:"engine_id,omitempty"` // the engineId of an fine-tuneable Stability model + Extras *structpb.Struct `protobuf:"bytes,2047,opt,name=extras,proto3,oneof" json:"extras,omitempty"` // for development use +} + +func (x *CreateModelRequest) Reset() { + *x = CreateModelRequest{} + if protoimpl.UnsafeEnabled { + mi := &file_stability_api_platform_finetuning_finetuning_proto_msgTypes[1] + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + ms.StoreMessageInfo(mi) + } +} + +func (x *CreateModelRequest) String() string { + return protoimpl.X.MessageStringOf(x) +} + +func (*CreateModelRequest) ProtoMessage() {} + +func (x *CreateModelRequest) ProtoReflect() protoreflect.Message { + mi := &file_stability_api_platform_finetuning_finetuning_proto_msgTypes[1] + if protoimpl.UnsafeEnabled && x != nil { + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + if ms.LoadMessageInfo() == nil { + ms.StoreMessageInfo(mi) + } + return ms + } + return mi.MessageOf(x) +} + +// Deprecated: Use CreateModelRequest.ProtoReflect.Descriptor instead. +func (*CreateModelRequest) Descriptor() ([]byte, []int) { + return file_stability_api_platform_finetuning_finetuning_proto_rawDescGZIP(), []int{1} +} + +func (x *CreateModelRequest) GetName() string { + if x != nil { + return x.Name + } + return "" +} + +func (x *CreateModelRequest) GetMode() FineTuningMode { + if x != nil && x.Mode != nil { + return *x.Mode + } + return FineTuningMode_FINE_TUNING_MODE_UNSPECIFIED +} + +func (x *CreateModelRequest) GetObjectPrompt() string { + if x != nil && x.ObjectPrompt != nil { + return *x.ObjectPrompt + } + return "" +} + +func (x *CreateModelRequest) GetProjectId() string { + if x != nil { + return x.ProjectId + } + return "" +} + +func (x *CreateModelRequest) GetEngineId() string { + if x != nil { + return x.EngineId + } + return "" +} + +func (x *CreateModelRequest) GetExtras() *structpb.Struct { + if x != nil { + return x.Extras + } + return nil +} + +type CreateModelResponse struct { + state protoimpl.MessageState + sizeCache protoimpl.SizeCache + unknownFields protoimpl.UnknownFields + + Model *FineTuningModel `protobuf:"bytes,1,opt,name=model,proto3" json:"model,omitempty"` +} + +func (x *CreateModelResponse) Reset() { + *x = CreateModelResponse{} + if protoimpl.UnsafeEnabled { + mi := &file_stability_api_platform_finetuning_finetuning_proto_msgTypes[2] + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + ms.StoreMessageInfo(mi) + } +} + +func (x *CreateModelResponse) String() string { + return protoimpl.X.MessageStringOf(x) +} + +func (*CreateModelResponse) ProtoMessage() {} + +func (x *CreateModelResponse) ProtoReflect() protoreflect.Message { + mi := &file_stability_api_platform_finetuning_finetuning_proto_msgTypes[2] + if protoimpl.UnsafeEnabled && x != nil { + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + if ms.LoadMessageInfo() == nil { + ms.StoreMessageInfo(mi) + } + return ms + } + return mi.MessageOf(x) +} + +// Deprecated: Use CreateModelResponse.ProtoReflect.Descriptor instead. +func (*CreateModelResponse) Descriptor() ([]byte, []int) { + return file_stability_api_platform_finetuning_finetuning_proto_rawDescGZIP(), []int{2} +} + +func (x *CreateModelResponse) GetModel() *FineTuningModel { + if x != nil { + return x.Model + } + return nil +} + +type GetModelRequest struct { + state protoimpl.MessageState + sizeCache protoimpl.SizeCache + unknownFields protoimpl.UnknownFields + + Id string `protobuf:"bytes,1,opt,name=id,proto3" json:"id,omitempty"` // ID of the model +} + +func (x *GetModelRequest) Reset() { + *x = GetModelRequest{} + if protoimpl.UnsafeEnabled { + mi := &file_stability_api_platform_finetuning_finetuning_proto_msgTypes[3] + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + ms.StoreMessageInfo(mi) + } +} + +func (x *GetModelRequest) String() string { + return protoimpl.X.MessageStringOf(x) +} + +func (*GetModelRequest) ProtoMessage() {} + +func (x *GetModelRequest) ProtoReflect() protoreflect.Message { + mi := &file_stability_api_platform_finetuning_finetuning_proto_msgTypes[3] + if protoimpl.UnsafeEnabled && x != nil { + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + if ms.LoadMessageInfo() == nil { + ms.StoreMessageInfo(mi) + } + return ms + } + return mi.MessageOf(x) +} + +// Deprecated: Use GetModelRequest.ProtoReflect.Descriptor instead. +func (*GetModelRequest) Descriptor() ([]byte, []int) { + return file_stability_api_platform_finetuning_finetuning_proto_rawDescGZIP(), []int{3} +} + +func (x *GetModelRequest) GetId() string { + if x != nil { + return x.Id + } + return "" +} + +type GetModelResponse struct { + state protoimpl.MessageState + sizeCache protoimpl.SizeCache + unknownFields protoimpl.UnknownFields + + Model *FineTuningModel `protobuf:"bytes,1,opt,name=model,proto3" json:"model,omitempty"` +} + +func (x *GetModelResponse) Reset() { + *x = GetModelResponse{} + if protoimpl.UnsafeEnabled { + mi := &file_stability_api_platform_finetuning_finetuning_proto_msgTypes[4] + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + ms.StoreMessageInfo(mi) + } +} + +func (x *GetModelResponse) String() string { + return protoimpl.X.MessageStringOf(x) +} + +func (*GetModelResponse) ProtoMessage() {} + +func (x *GetModelResponse) ProtoReflect() protoreflect.Message { + mi := &file_stability_api_platform_finetuning_finetuning_proto_msgTypes[4] + if protoimpl.UnsafeEnabled && x != nil { + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + if ms.LoadMessageInfo() == nil { + ms.StoreMessageInfo(mi) + } + return ms + } + return mi.MessageOf(x) +} + +// Deprecated: Use GetModelResponse.ProtoReflect.Descriptor instead. +func (*GetModelResponse) Descriptor() ([]byte, []int) { + return file_stability_api_platform_finetuning_finetuning_proto_rawDescGZIP(), []int{4} +} + +func (x *GetModelResponse) GetModel() *FineTuningModel { + if x != nil { + return x.Model + } + return nil +} + +type UpdateModelRequest struct { + state protoimpl.MessageState + sizeCache protoimpl.SizeCache + unknownFields protoimpl.UnknownFields + + Id string `protobuf:"bytes,1,opt,name=id,proto3" json:"id,omitempty"` // the id of the model + Name *string `protobuf:"bytes,2,opt,name=name,proto3,oneof" json:"name,omitempty"` // a readable model name + Mode *FineTuningMode `protobuf:"varint,3,opt,name=mode,proto3,enum=gooseai.FineTuningMode,oneof" json:"mode,omitempty"` // the mode of the model + ObjectPrompt *string `protobuf:"bytes,4,opt,name=object_prompt,json=objectPrompt,proto3,oneof" json:"object_prompt,omitempty"` // freeform text description of object, should only be set when mode is OBJECT + EngineId *string `protobuf:"bytes,5,opt,name=engine_id,json=engineId,proto3,oneof" json:"engine_id,omitempty"` // the engineId of an fine-tuneable Stability model +} + +func (x *UpdateModelRequest) Reset() { + *x = UpdateModelRequest{} + if protoimpl.UnsafeEnabled { + mi := &file_stability_api_platform_finetuning_finetuning_proto_msgTypes[5] + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + ms.StoreMessageInfo(mi) + } +} + +func (x *UpdateModelRequest) String() string { + return protoimpl.X.MessageStringOf(x) +} + +func (*UpdateModelRequest) ProtoMessage() {} + +func (x *UpdateModelRequest) ProtoReflect() protoreflect.Message { + mi := &file_stability_api_platform_finetuning_finetuning_proto_msgTypes[5] + if protoimpl.UnsafeEnabled && x != nil { + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + if ms.LoadMessageInfo() == nil { + ms.StoreMessageInfo(mi) + } + return ms + } + return mi.MessageOf(x) +} + +// Deprecated: Use UpdateModelRequest.ProtoReflect.Descriptor instead. +func (*UpdateModelRequest) Descriptor() ([]byte, []int) { + return file_stability_api_platform_finetuning_finetuning_proto_rawDescGZIP(), []int{5} +} + +func (x *UpdateModelRequest) GetId() string { + if x != nil { + return x.Id + } + return "" +} + +func (x *UpdateModelRequest) GetName() string { + if x != nil && x.Name != nil { + return *x.Name + } + return "" +} + +func (x *UpdateModelRequest) GetMode() FineTuningMode { + if x != nil && x.Mode != nil { + return *x.Mode + } + return FineTuningMode_FINE_TUNING_MODE_UNSPECIFIED +} + +func (x *UpdateModelRequest) GetObjectPrompt() string { + if x != nil && x.ObjectPrompt != nil { + return *x.ObjectPrompt + } + return "" +} + +func (x *UpdateModelRequest) GetEngineId() string { + if x != nil && x.EngineId != nil { + return *x.EngineId + } + return "" +} + +type UpdateModelResponse struct { + state protoimpl.MessageState + sizeCache protoimpl.SizeCache + unknownFields protoimpl.UnknownFields + + Model *FineTuningModel `protobuf:"bytes,1,opt,name=model,proto3" json:"model,omitempty"` +} + +func (x *UpdateModelResponse) Reset() { + *x = UpdateModelResponse{} + if protoimpl.UnsafeEnabled { + mi := &file_stability_api_platform_finetuning_finetuning_proto_msgTypes[6] + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + ms.StoreMessageInfo(mi) + } +} + +func (x *UpdateModelResponse) String() string { + return protoimpl.X.MessageStringOf(x) +} + +func (*UpdateModelResponse) ProtoMessage() {} + +func (x *UpdateModelResponse) ProtoReflect() protoreflect.Message { + mi := &file_stability_api_platform_finetuning_finetuning_proto_msgTypes[6] + if protoimpl.UnsafeEnabled && x != nil { + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + if ms.LoadMessageInfo() == nil { + ms.StoreMessageInfo(mi) + } + return ms + } + return mi.MessageOf(x) +} + +// Deprecated: Use UpdateModelResponse.ProtoReflect.Descriptor instead. +func (*UpdateModelResponse) Descriptor() ([]byte, []int) { + return file_stability_api_platform_finetuning_finetuning_proto_rawDescGZIP(), []int{6} +} + +func (x *UpdateModelResponse) GetModel() *FineTuningModel { + if x != nil { + return x.Model + } + return nil +} + +type DeleteModelRequest struct { + state protoimpl.MessageState + sizeCache protoimpl.SizeCache + unknownFields protoimpl.UnknownFields + + Id string `protobuf:"bytes,1,opt,name=id,proto3" json:"id,omitempty"` // ID of the model to delete +} + +func (x *DeleteModelRequest) Reset() { + *x = DeleteModelRequest{} + if protoimpl.UnsafeEnabled { + mi := &file_stability_api_platform_finetuning_finetuning_proto_msgTypes[7] + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + ms.StoreMessageInfo(mi) + } +} + +func (x *DeleteModelRequest) String() string { + return protoimpl.X.MessageStringOf(x) +} + +func (*DeleteModelRequest) ProtoMessage() {} + +func (x *DeleteModelRequest) ProtoReflect() protoreflect.Message { + mi := &file_stability_api_platform_finetuning_finetuning_proto_msgTypes[7] + if protoimpl.UnsafeEnabled && x != nil { + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + if ms.LoadMessageInfo() == nil { + ms.StoreMessageInfo(mi) + } + return ms + } + return mi.MessageOf(x) +} + +// Deprecated: Use DeleteModelRequest.ProtoReflect.Descriptor instead. +func (*DeleteModelRequest) Descriptor() ([]byte, []int) { + return file_stability_api_platform_finetuning_finetuning_proto_rawDescGZIP(), []int{7} +} + +func (x *DeleteModelRequest) GetId() string { + if x != nil { + return x.Id + } + return "" +} + +type DeleteModelResponse struct { + state protoimpl.MessageState + sizeCache protoimpl.SizeCache + unknownFields protoimpl.UnknownFields + + Model *FineTuningModel `protobuf:"bytes,1,opt,name=model,proto3" json:"model,omitempty"` +} + +func (x *DeleteModelResponse) Reset() { + *x = DeleteModelResponse{} + if protoimpl.UnsafeEnabled { + mi := &file_stability_api_platform_finetuning_finetuning_proto_msgTypes[8] + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + ms.StoreMessageInfo(mi) + } +} + +func (x *DeleteModelResponse) String() string { + return protoimpl.X.MessageStringOf(x) +} + +func (*DeleteModelResponse) ProtoMessage() {} + +func (x *DeleteModelResponse) ProtoReflect() protoreflect.Message { + mi := &file_stability_api_platform_finetuning_finetuning_proto_msgTypes[8] + if protoimpl.UnsafeEnabled && x != nil { + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + if ms.LoadMessageInfo() == nil { + ms.StoreMessageInfo(mi) + } + return ms + } + return mi.MessageOf(x) +} + +// Deprecated: Use DeleteModelResponse.ProtoReflect.Descriptor instead. +func (*DeleteModelResponse) Descriptor() ([]byte, []int) { + return file_stability_api_platform_finetuning_finetuning_proto_rawDescGZIP(), []int{8} +} + +func (x *DeleteModelResponse) GetModel() *FineTuningModel { + if x != nil { + return x.Model + } + return nil +} + +type ResubmitModelRequest struct { + state protoimpl.MessageState + sizeCache protoimpl.SizeCache + unknownFields protoimpl.UnknownFields + + Id string `protobuf:"bytes,1,opt,name=id,proto3" json:"id,omitempty"` // ID of the model to resubmit +} + +func (x *ResubmitModelRequest) Reset() { + *x = ResubmitModelRequest{} + if protoimpl.UnsafeEnabled { + mi := &file_stability_api_platform_finetuning_finetuning_proto_msgTypes[9] + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + ms.StoreMessageInfo(mi) + } +} + +func (x *ResubmitModelRequest) String() string { + return protoimpl.X.MessageStringOf(x) +} + +func (*ResubmitModelRequest) ProtoMessage() {} + +func (x *ResubmitModelRequest) ProtoReflect() protoreflect.Message { + mi := &file_stability_api_platform_finetuning_finetuning_proto_msgTypes[9] + if protoimpl.UnsafeEnabled && x != nil { + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + if ms.LoadMessageInfo() == nil { + ms.StoreMessageInfo(mi) + } + return ms + } + return mi.MessageOf(x) +} + +// Deprecated: Use ResubmitModelRequest.ProtoReflect.Descriptor instead. +func (*ResubmitModelRequest) Descriptor() ([]byte, []int) { + return file_stability_api_platform_finetuning_finetuning_proto_rawDescGZIP(), []int{9} +} + +func (x *ResubmitModelRequest) GetId() string { + if x != nil { + return x.Id + } + return "" +} + +type ResubmitModelResponse struct { + state protoimpl.MessageState + sizeCache protoimpl.SizeCache + unknownFields protoimpl.UnknownFields + + Model *FineTuningModel `protobuf:"bytes,1,opt,name=model,proto3" json:"model,omitempty"` +} + +func (x *ResubmitModelResponse) Reset() { + *x = ResubmitModelResponse{} + if protoimpl.UnsafeEnabled { + mi := &file_stability_api_platform_finetuning_finetuning_proto_msgTypes[10] + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + ms.StoreMessageInfo(mi) + } +} + +func (x *ResubmitModelResponse) String() string { + return protoimpl.X.MessageStringOf(x) +} + +func (*ResubmitModelResponse) ProtoMessage() {} + +func (x *ResubmitModelResponse) ProtoReflect() protoreflect.Message { + mi := &file_stability_api_platform_finetuning_finetuning_proto_msgTypes[10] + if protoimpl.UnsafeEnabled && x != nil { + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + if ms.LoadMessageInfo() == nil { + ms.StoreMessageInfo(mi) + } + return ms + } + return mi.MessageOf(x) +} + +// Deprecated: Use ResubmitModelResponse.ProtoReflect.Descriptor instead. +func (*ResubmitModelResponse) Descriptor() ([]byte, []int) { + return file_stability_api_platform_finetuning_finetuning_proto_rawDescGZIP(), []int{10} +} + +func (x *ResubmitModelResponse) GetModel() *FineTuningModel { + if x != nil { + return x.Model + } + return nil +} + +type ListModelsRequest struct { + state protoimpl.MessageState + sizeCache protoimpl.SizeCache + unknownFields protoimpl.UnknownFields + + // Types that are assignable to Id: + // + // *ListModelsRequest_OrgId + // *ListModelsRequest_UserId + Id isListModelsRequest_Id `protobuf_oneof:"id"` +} + +func (x *ListModelsRequest) Reset() { + *x = ListModelsRequest{} + if protoimpl.UnsafeEnabled { + mi := &file_stability_api_platform_finetuning_finetuning_proto_msgTypes[11] + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + ms.StoreMessageInfo(mi) + } +} + +func (x *ListModelsRequest) String() string { + return protoimpl.X.MessageStringOf(x) +} + +func (*ListModelsRequest) ProtoMessage() {} + +func (x *ListModelsRequest) ProtoReflect() protoreflect.Message { + mi := &file_stability_api_platform_finetuning_finetuning_proto_msgTypes[11] + if protoimpl.UnsafeEnabled && x != nil { + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + if ms.LoadMessageInfo() == nil { + ms.StoreMessageInfo(mi) + } + return ms + } + return mi.MessageOf(x) +} + +// Deprecated: Use ListModelsRequest.ProtoReflect.Descriptor instead. +func (*ListModelsRequest) Descriptor() ([]byte, []int) { + return file_stability_api_platform_finetuning_finetuning_proto_rawDescGZIP(), []int{11} +} + +func (m *ListModelsRequest) GetId() isListModelsRequest_Id { + if m != nil { + return m.Id + } + return nil +} + +func (x *ListModelsRequest) GetOrgId() string { + if x, ok := x.GetId().(*ListModelsRequest_OrgId); ok { + return x.OrgId + } + return "" +} + +func (x *ListModelsRequest) GetUserId() string { + if x, ok := x.GetId().(*ListModelsRequest_UserId); ok { + return x.UserId + } + return "" +} + +type isListModelsRequest_Id interface { + isListModelsRequest_Id() +} + +type ListModelsRequest_OrgId struct { + OrgId string `protobuf:"bytes,1,opt,name=org_id,json=orgId,proto3,oneof"` // the organization's ID +} + +type ListModelsRequest_UserId struct { + UserId string `protobuf:"bytes,2,opt,name=user_id,json=userId,proto3,oneof"` // or the user's ID +} + +func (*ListModelsRequest_OrgId) isListModelsRequest_Id() {} + +func (*ListModelsRequest_UserId) isListModelsRequest_Id() {} + +type ListModelsResponse struct { + state protoimpl.MessageState + sizeCache protoimpl.SizeCache + unknownFields protoimpl.UnknownFields + + Models []*FineTuningModel `protobuf:"bytes,1,rep,name=models,proto3" json:"models,omitempty"` // the list of models +} + +func (x *ListModelsResponse) Reset() { + *x = ListModelsResponse{} + if protoimpl.UnsafeEnabled { + mi := &file_stability_api_platform_finetuning_finetuning_proto_msgTypes[12] + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + ms.StoreMessageInfo(mi) + } +} + +func (x *ListModelsResponse) String() string { + return protoimpl.X.MessageStringOf(x) +} + +func (*ListModelsResponse) ProtoMessage() {} + +func (x *ListModelsResponse) ProtoReflect() protoreflect.Message { + mi := &file_stability_api_platform_finetuning_finetuning_proto_msgTypes[12] + if protoimpl.UnsafeEnabled && x != nil { + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + if ms.LoadMessageInfo() == nil { + ms.StoreMessageInfo(mi) + } + return ms + } + return mi.MessageOf(x) +} + +// Deprecated: Use ListModelsResponse.ProtoReflect.Descriptor instead. +func (*ListModelsResponse) Descriptor() ([]byte, []int) { + return file_stability_api_platform_finetuning_finetuning_proto_rawDescGZIP(), []int{12} +} + +func (x *ListModelsResponse) GetModels() []*FineTuningModel { + if x != nil { + return x.Models + } + return nil +} + +var File_stability_api_platform_finetuning_finetuning_proto protoreflect.FileDescriptor + +var file_stability_api_platform_finetuning_finetuning_proto_rawDesc = []byte{ + 0x0a, 0x32, 0x73, 0x74, 0x61, 0x62, 0x69, 0x6c, 0x69, 0x74, 0x79, 0x5f, 0x61, 0x70, 0x69, 0x2f, + 0x70, 0x6c, 0x61, 0x74, 0x66, 0x6f, 0x72, 0x6d, 0x2f, 0x66, 0x69, 0x6e, 0x65, 0x74, 0x75, 0x6e, + 0x69, 0x6e, 0x67, 0x2f, 0x66, 0x69, 0x6e, 0x65, 0x74, 0x75, 0x6e, 0x69, 0x6e, 0x67, 0x2e, 0x70, + 0x72, 0x6f, 0x74, 0x6f, 0x12, 0x07, 0x67, 0x6f, 0x6f, 0x73, 0x65, 0x61, 0x69, 0x1a, 0x1c, 0x67, + 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2f, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x62, 0x75, 0x66, 0x2f, 0x73, + 0x74, 0x72, 0x75, 0x63, 0x74, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x22, 0x8f, 0x03, 0x0a, 0x0f, + 0x46, 0x69, 0x6e, 0x65, 0x54, 0x75, 0x6e, 0x69, 0x6e, 0x67, 0x4d, 0x6f, 0x64, 0x65, 0x6c, 0x12, + 0x0e, 0x0a, 0x02, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x02, 0x69, 0x64, 0x12, + 0x17, 0x0a, 0x07, 0x75, 0x73, 0x65, 0x72, 0x5f, 0x69, 0x64, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, + 0x52, 0x06, 0x75, 0x73, 0x65, 0x72, 0x49, 0x64, 0x12, 0x12, 0x0a, 0x04, 0x6e, 0x61, 0x6d, 0x65, + 0x18, 0x03, 0x20, 0x01, 0x28, 0x09, 0x52, 0x04, 0x6e, 0x61, 0x6d, 0x65, 0x12, 0x30, 0x0a, 0x04, + 0x6d, 0x6f, 0x64, 0x65, 0x18, 0x04, 0x20, 0x01, 0x28, 0x0e, 0x32, 0x17, 0x2e, 0x67, 0x6f, 0x6f, + 0x73, 0x65, 0x61, 0x69, 0x2e, 0x46, 0x69, 0x6e, 0x65, 0x54, 0x75, 0x6e, 0x69, 0x6e, 0x67, 0x4d, + 0x6f, 0x64, 0x65, 0x48, 0x00, 0x52, 0x04, 0x6d, 0x6f, 0x64, 0x65, 0x88, 0x01, 0x01, 0x12, 0x28, + 0x0a, 0x0d, 0x6f, 0x62, 0x6a, 0x65, 0x63, 0x74, 0x5f, 0x70, 0x72, 0x6f, 0x6d, 0x70, 0x74, 0x18, + 0x05, 0x20, 0x01, 0x28, 0x09, 0x48, 0x01, 0x52, 0x0c, 0x6f, 0x62, 0x6a, 0x65, 0x63, 0x74, 0x50, + 0x72, 0x6f, 0x6d, 0x70, 0x74, 0x88, 0x01, 0x01, 0x12, 0x1d, 0x0a, 0x0a, 0x70, 0x72, 0x6f, 0x6a, + 0x65, 0x63, 0x74, 0x5f, 0x69, 0x64, 0x18, 0x06, 0x20, 0x01, 0x28, 0x09, 0x52, 0x09, 0x70, 0x72, + 0x6f, 0x6a, 0x65, 0x63, 0x74, 0x49, 0x64, 0x12, 0x1a, 0x0a, 0x08, 0x64, 0x75, 0x72, 0x61, 0x74, + 0x69, 0x6f, 0x6e, 0x18, 0x07, 0x20, 0x01, 0x28, 0x01, 0x52, 0x08, 0x64, 0x75, 0x72, 0x61, 0x74, + 0x69, 0x6f, 0x6e, 0x12, 0x31, 0x0a, 0x06, 0x73, 0x74, 0x61, 0x74, 0x75, 0x73, 0x18, 0x08, 0x20, + 0x01, 0x28, 0x0e, 0x32, 0x19, 0x2e, 0x67, 0x6f, 0x6f, 0x73, 0x65, 0x61, 0x69, 0x2e, 0x46, 0x69, + 0x6e, 0x65, 0x54, 0x75, 0x6e, 0x69, 0x6e, 0x67, 0x53, 0x74, 0x61, 0x74, 0x75, 0x73, 0x52, 0x06, + 0x73, 0x74, 0x61, 0x74, 0x75, 0x73, 0x12, 0x1b, 0x0a, 0x09, 0x65, 0x6e, 0x67, 0x69, 0x6e, 0x65, + 0x5f, 0x69, 0x64, 0x18, 0x09, 0x20, 0x01, 0x28, 0x09, 0x52, 0x08, 0x65, 0x6e, 0x67, 0x69, 0x6e, + 0x65, 0x49, 0x64, 0x12, 0x2a, 0x0a, 0x0e, 0x66, 0x61, 0x69, 0x6c, 0x75, 0x72, 0x65, 0x5f, 0x72, + 0x65, 0x61, 0x73, 0x6f, 0x6e, 0x18, 0x0a, 0x20, 0x01, 0x28, 0x09, 0x48, 0x02, 0x52, 0x0d, 0x66, + 0x61, 0x69, 0x6c, 0x75, 0x72, 0x65, 0x52, 0x65, 0x61, 0x73, 0x6f, 0x6e, 0x88, 0x01, 0x01, 0x42, + 0x07, 0x0a, 0x05, 0x5f, 0x6d, 0x6f, 0x64, 0x65, 0x42, 0x10, 0x0a, 0x0e, 0x5f, 0x6f, 0x62, 0x6a, + 0x65, 0x63, 0x74, 0x5f, 0x70, 0x72, 0x6f, 0x6d, 0x70, 0x74, 0x42, 0x11, 0x0a, 0x0f, 0x5f, 0x66, + 0x61, 0x69, 0x6c, 0x75, 0x72, 0x65, 0x5f, 0x72, 0x65, 0x61, 0x73, 0x6f, 0x6e, 0x22, 0x9d, 0x02, + 0x0a, 0x12, 0x43, 0x72, 0x65, 0x61, 0x74, 0x65, 0x4d, 0x6f, 0x64, 0x65, 0x6c, 0x52, 0x65, 0x71, + 0x75, 0x65, 0x73, 0x74, 0x12, 0x12, 0x0a, 0x04, 0x6e, 0x61, 0x6d, 0x65, 0x18, 0x01, 0x20, 0x01, + 0x28, 0x09, 0x52, 0x04, 0x6e, 0x61, 0x6d, 0x65, 0x12, 0x30, 0x0a, 0x04, 0x6d, 0x6f, 0x64, 0x65, + 0x18, 0x02, 0x20, 0x01, 0x28, 0x0e, 0x32, 0x17, 0x2e, 0x67, 0x6f, 0x6f, 0x73, 0x65, 0x61, 0x69, + 0x2e, 0x46, 0x69, 0x6e, 0x65, 0x54, 0x75, 0x6e, 0x69, 0x6e, 0x67, 0x4d, 0x6f, 0x64, 0x65, 0x48, + 0x00, 0x52, 0x04, 0x6d, 0x6f, 0x64, 0x65, 0x88, 0x01, 0x01, 0x12, 0x28, 0x0a, 0x0d, 0x6f, 0x62, + 0x6a, 0x65, 0x63, 0x74, 0x5f, 0x70, 0x72, 0x6f, 0x6d, 0x70, 0x74, 0x18, 0x03, 0x20, 0x01, 0x28, + 0x09, 0x48, 0x01, 0x52, 0x0c, 0x6f, 0x62, 0x6a, 0x65, 0x63, 0x74, 0x50, 0x72, 0x6f, 0x6d, 0x70, + 0x74, 0x88, 0x01, 0x01, 0x12, 0x1d, 0x0a, 0x0a, 0x70, 0x72, 0x6f, 0x6a, 0x65, 0x63, 0x74, 0x5f, + 0x69, 0x64, 0x18, 0x04, 0x20, 0x01, 0x28, 0x09, 0x52, 0x09, 0x70, 0x72, 0x6f, 0x6a, 0x65, 0x63, + 0x74, 0x49, 0x64, 0x12, 0x1b, 0x0a, 0x09, 0x65, 0x6e, 0x67, 0x69, 0x6e, 0x65, 0x5f, 0x69, 0x64, + 0x18, 0x05, 0x20, 0x01, 0x28, 0x09, 0x52, 0x08, 0x65, 0x6e, 0x67, 0x69, 0x6e, 0x65, 0x49, 0x64, + 0x12, 0x35, 0x0a, 0x06, 0x65, 0x78, 0x74, 0x72, 0x61, 0x73, 0x18, 0xff, 0x0f, 0x20, 0x01, 0x28, + 0x0b, 0x32, 0x17, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, + 0x62, 0x75, 0x66, 0x2e, 0x53, 0x74, 0x72, 0x75, 0x63, 0x74, 0x48, 0x02, 0x52, 0x06, 0x65, 0x78, + 0x74, 0x72, 0x61, 0x73, 0x88, 0x01, 0x01, 0x42, 0x07, 0x0a, 0x05, 0x5f, 0x6d, 0x6f, 0x64, 0x65, + 0x42, 0x10, 0x0a, 0x0e, 0x5f, 0x6f, 0x62, 0x6a, 0x65, 0x63, 0x74, 0x5f, 0x70, 0x72, 0x6f, 0x6d, + 0x70, 0x74, 0x42, 0x09, 0x0a, 0x07, 0x5f, 0x65, 0x78, 0x74, 0x72, 0x61, 0x73, 0x22, 0x45, 0x0a, + 0x13, 0x43, 0x72, 0x65, 0x61, 0x74, 0x65, 0x4d, 0x6f, 0x64, 0x65, 0x6c, 0x52, 0x65, 0x73, 0x70, + 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x2e, 0x0a, 0x05, 0x6d, 0x6f, 0x64, 0x65, 0x6c, 0x18, 0x01, 0x20, + 0x01, 0x28, 0x0b, 0x32, 0x18, 0x2e, 0x67, 0x6f, 0x6f, 0x73, 0x65, 0x61, 0x69, 0x2e, 0x46, 0x69, + 0x6e, 0x65, 0x54, 0x75, 0x6e, 0x69, 0x6e, 0x67, 0x4d, 0x6f, 0x64, 0x65, 0x6c, 0x52, 0x05, 0x6d, + 0x6f, 0x64, 0x65, 0x6c, 0x22, 0x21, 0x0a, 0x0f, 0x47, 0x65, 0x74, 0x4d, 0x6f, 0x64, 0x65, 0x6c, + 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, 0x0e, 0x0a, 0x02, 0x69, 0x64, 0x18, 0x01, 0x20, + 0x01, 0x28, 0x09, 0x52, 0x02, 0x69, 0x64, 0x22, 0x42, 0x0a, 0x10, 0x47, 0x65, 0x74, 0x4d, 0x6f, + 0x64, 0x65, 0x6c, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x2e, 0x0a, 0x05, 0x6d, + 0x6f, 0x64, 0x65, 0x6c, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x18, 0x2e, 0x67, 0x6f, 0x6f, + 0x73, 0x65, 0x61, 0x69, 0x2e, 0x46, 0x69, 0x6e, 0x65, 0x54, 0x75, 0x6e, 0x69, 0x6e, 0x67, 0x4d, + 0x6f, 0x64, 0x65, 0x6c, 0x52, 0x05, 0x6d, 0x6f, 0x64, 0x65, 0x6c, 0x22, 0xed, 0x01, 0x0a, 0x12, + 0x55, 0x70, 0x64, 0x61, 0x74, 0x65, 0x4d, 0x6f, 0x64, 0x65, 0x6c, 0x52, 0x65, 0x71, 0x75, 0x65, + 0x73, 0x74, 0x12, 0x0e, 0x0a, 0x02, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x02, + 0x69, 0x64, 0x12, 0x17, 0x0a, 0x04, 0x6e, 0x61, 0x6d, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, + 0x48, 0x00, 0x52, 0x04, 0x6e, 0x61, 0x6d, 0x65, 0x88, 0x01, 0x01, 0x12, 0x30, 0x0a, 0x04, 0x6d, + 0x6f, 0x64, 0x65, 0x18, 0x03, 0x20, 0x01, 0x28, 0x0e, 0x32, 0x17, 0x2e, 0x67, 0x6f, 0x6f, 0x73, + 0x65, 0x61, 0x69, 0x2e, 0x46, 0x69, 0x6e, 0x65, 0x54, 0x75, 0x6e, 0x69, 0x6e, 0x67, 0x4d, 0x6f, + 0x64, 0x65, 0x48, 0x01, 0x52, 0x04, 0x6d, 0x6f, 0x64, 0x65, 0x88, 0x01, 0x01, 0x12, 0x28, 0x0a, + 0x0d, 0x6f, 0x62, 0x6a, 0x65, 0x63, 0x74, 0x5f, 0x70, 0x72, 0x6f, 0x6d, 0x70, 0x74, 0x18, 0x04, + 0x20, 0x01, 0x28, 0x09, 0x48, 0x02, 0x52, 0x0c, 0x6f, 0x62, 0x6a, 0x65, 0x63, 0x74, 0x50, 0x72, + 0x6f, 0x6d, 0x70, 0x74, 0x88, 0x01, 0x01, 0x12, 0x20, 0x0a, 0x09, 0x65, 0x6e, 0x67, 0x69, 0x6e, + 0x65, 0x5f, 0x69, 0x64, 0x18, 0x05, 0x20, 0x01, 0x28, 0x09, 0x48, 0x03, 0x52, 0x08, 0x65, 0x6e, + 0x67, 0x69, 0x6e, 0x65, 0x49, 0x64, 0x88, 0x01, 0x01, 0x42, 0x07, 0x0a, 0x05, 0x5f, 0x6e, 0x61, + 0x6d, 0x65, 0x42, 0x07, 0x0a, 0x05, 0x5f, 0x6d, 0x6f, 0x64, 0x65, 0x42, 0x10, 0x0a, 0x0e, 0x5f, + 0x6f, 0x62, 0x6a, 0x65, 0x63, 0x74, 0x5f, 0x70, 0x72, 0x6f, 0x6d, 0x70, 0x74, 0x42, 0x0c, 0x0a, + 0x0a, 0x5f, 0x65, 0x6e, 0x67, 0x69, 0x6e, 0x65, 0x5f, 0x69, 0x64, 0x22, 0x45, 0x0a, 0x13, 0x55, + 0x70, 0x64, 0x61, 0x74, 0x65, 0x4d, 0x6f, 0x64, 0x65, 0x6c, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, + 0x73, 0x65, 0x12, 0x2e, 0x0a, 0x05, 0x6d, 0x6f, 0x64, 0x65, 0x6c, 0x18, 0x01, 0x20, 0x01, 0x28, + 0x0b, 0x32, 0x18, 0x2e, 0x67, 0x6f, 0x6f, 0x73, 0x65, 0x61, 0x69, 0x2e, 0x46, 0x69, 0x6e, 0x65, + 0x54, 0x75, 0x6e, 0x69, 0x6e, 0x67, 0x4d, 0x6f, 0x64, 0x65, 0x6c, 0x52, 0x05, 0x6d, 0x6f, 0x64, + 0x65, 0x6c, 0x22, 0x24, 0x0a, 0x12, 0x44, 0x65, 0x6c, 0x65, 0x74, 0x65, 0x4d, 0x6f, 0x64, 0x65, + 0x6c, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, 0x0e, 0x0a, 0x02, 0x69, 0x64, 0x18, 0x01, + 0x20, 0x01, 0x28, 0x09, 0x52, 0x02, 0x69, 0x64, 0x22, 0x45, 0x0a, 0x13, 0x44, 0x65, 0x6c, 0x65, + 0x74, 0x65, 0x4d, 0x6f, 0x64, 0x65, 0x6c, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, + 0x2e, 0x0a, 0x05, 0x6d, 0x6f, 0x64, 0x65, 0x6c, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x18, + 0x2e, 0x67, 0x6f, 0x6f, 0x73, 0x65, 0x61, 0x69, 0x2e, 0x46, 0x69, 0x6e, 0x65, 0x54, 0x75, 0x6e, + 0x69, 0x6e, 0x67, 0x4d, 0x6f, 0x64, 0x65, 0x6c, 0x52, 0x05, 0x6d, 0x6f, 0x64, 0x65, 0x6c, 0x22, + 0x26, 0x0a, 0x14, 0x52, 0x65, 0x73, 0x75, 0x62, 0x6d, 0x69, 0x74, 0x4d, 0x6f, 0x64, 0x65, 0x6c, + 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, 0x0e, 0x0a, 0x02, 0x69, 0x64, 0x18, 0x01, 0x20, + 0x01, 0x28, 0x09, 0x52, 0x02, 0x69, 0x64, 0x22, 0x47, 0x0a, 0x15, 0x52, 0x65, 0x73, 0x75, 0x62, + 0x6d, 0x69, 0x74, 0x4d, 0x6f, 0x64, 0x65, 0x6c, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, + 0x12, 0x2e, 0x0a, 0x05, 0x6d, 0x6f, 0x64, 0x65, 0x6c, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0b, 0x32, + 0x18, 0x2e, 0x67, 0x6f, 0x6f, 0x73, 0x65, 0x61, 0x69, 0x2e, 0x46, 0x69, 0x6e, 0x65, 0x54, 0x75, + 0x6e, 0x69, 0x6e, 0x67, 0x4d, 0x6f, 0x64, 0x65, 0x6c, 0x52, 0x05, 0x6d, 0x6f, 0x64, 0x65, 0x6c, + 0x22, 0x4d, 0x0a, 0x11, 0x4c, 0x69, 0x73, 0x74, 0x4d, 0x6f, 0x64, 0x65, 0x6c, 0x73, 0x52, 0x65, + 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, 0x17, 0x0a, 0x06, 0x6f, 0x72, 0x67, 0x5f, 0x69, 0x64, 0x18, + 0x01, 0x20, 0x01, 0x28, 0x09, 0x48, 0x00, 0x52, 0x05, 0x6f, 0x72, 0x67, 0x49, 0x64, 0x12, 0x19, + 0x0a, 0x07, 0x75, 0x73, 0x65, 0x72, 0x5f, 0x69, 0x64, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x48, + 0x00, 0x52, 0x06, 0x75, 0x73, 0x65, 0x72, 0x49, 0x64, 0x42, 0x04, 0x0a, 0x02, 0x69, 0x64, 0x22, + 0x46, 0x0a, 0x12, 0x4c, 0x69, 0x73, 0x74, 0x4d, 0x6f, 0x64, 0x65, 0x6c, 0x73, 0x52, 0x65, 0x73, + 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x30, 0x0a, 0x06, 0x6d, 0x6f, 0x64, 0x65, 0x6c, 0x73, 0x18, + 0x01, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x18, 0x2e, 0x67, 0x6f, 0x6f, 0x73, 0x65, 0x61, 0x69, 0x2e, + 0x46, 0x69, 0x6e, 0x65, 0x54, 0x75, 0x6e, 0x69, 0x6e, 0x67, 0x4d, 0x6f, 0x64, 0x65, 0x6c, 0x52, + 0x06, 0x6d, 0x6f, 0x64, 0x65, 0x6c, 0x73, 0x2a, 0x86, 0x01, 0x0a, 0x0e, 0x46, 0x69, 0x6e, 0x65, + 0x54, 0x75, 0x6e, 0x69, 0x6e, 0x67, 0x4d, 0x6f, 0x64, 0x65, 0x12, 0x20, 0x0a, 0x1c, 0x46, 0x49, + 0x4e, 0x45, 0x5f, 0x54, 0x55, 0x4e, 0x49, 0x4e, 0x47, 0x5f, 0x4d, 0x4f, 0x44, 0x45, 0x5f, 0x55, + 0x4e, 0x53, 0x50, 0x45, 0x43, 0x49, 0x46, 0x49, 0x45, 0x44, 0x10, 0x00, 0x12, 0x19, 0x0a, 0x15, + 0x46, 0x49, 0x4e, 0x45, 0x5f, 0x54, 0x55, 0x4e, 0x49, 0x4e, 0x47, 0x5f, 0x4d, 0x4f, 0x44, 0x45, + 0x5f, 0x46, 0x41, 0x43, 0x45, 0x10, 0x01, 0x12, 0x1a, 0x0a, 0x16, 0x46, 0x49, 0x4e, 0x45, 0x5f, + 0x54, 0x55, 0x4e, 0x49, 0x4e, 0x47, 0x5f, 0x4d, 0x4f, 0x44, 0x45, 0x5f, 0x53, 0x54, 0x59, 0x4c, + 0x45, 0x10, 0x02, 0x12, 0x1b, 0x0a, 0x17, 0x46, 0x49, 0x4e, 0x45, 0x5f, 0x54, 0x55, 0x4e, 0x49, + 0x4e, 0x47, 0x5f, 0x4d, 0x4f, 0x44, 0x45, 0x5f, 0x4f, 0x42, 0x4a, 0x45, 0x43, 0x54, 0x10, 0x03, + 0x2a, 0xb9, 0x01, 0x0a, 0x10, 0x46, 0x69, 0x6e, 0x65, 0x54, 0x75, 0x6e, 0x69, 0x6e, 0x67, 0x53, + 0x74, 0x61, 0x74, 0x75, 0x73, 0x12, 0x22, 0x0a, 0x1e, 0x46, 0x49, 0x4e, 0x45, 0x5f, 0x54, 0x55, + 0x4e, 0x49, 0x4e, 0x47, 0x5f, 0x53, 0x54, 0x41, 0x54, 0x55, 0x53, 0x5f, 0x4e, 0x4f, 0x54, 0x5f, + 0x53, 0x54, 0x41, 0x52, 0x54, 0x45, 0x44, 0x10, 0x00, 0x12, 0x1e, 0x0a, 0x1a, 0x46, 0x49, 0x4e, + 0x45, 0x5f, 0x54, 0x55, 0x4e, 0x49, 0x4e, 0x47, 0x5f, 0x53, 0x54, 0x41, 0x54, 0x55, 0x53, 0x5f, + 0x52, 0x55, 0x4e, 0x4e, 0x49, 0x4e, 0x47, 0x10, 0x01, 0x12, 0x20, 0x0a, 0x1c, 0x46, 0x49, 0x4e, + 0x45, 0x5f, 0x54, 0x55, 0x4e, 0x49, 0x4e, 0x47, 0x5f, 0x53, 0x54, 0x41, 0x54, 0x55, 0x53, 0x5f, + 0x43, 0x4f, 0x4d, 0x50, 0x4c, 0x45, 0x54, 0x45, 0x44, 0x10, 0x02, 0x12, 0x1d, 0x0a, 0x19, 0x46, + 0x49, 0x4e, 0x45, 0x5f, 0x54, 0x55, 0x4e, 0x49, 0x4e, 0x47, 0x5f, 0x53, 0x54, 0x41, 0x54, 0x55, + 0x53, 0x5f, 0x46, 0x41, 0x49, 0x4c, 0x45, 0x44, 0x10, 0x03, 0x12, 0x20, 0x0a, 0x1c, 0x46, 0x49, + 0x4e, 0x45, 0x5f, 0x54, 0x55, 0x4e, 0x49, 0x4e, 0x47, 0x5f, 0x53, 0x54, 0x41, 0x54, 0x55, 0x53, + 0x5f, 0x53, 0x55, 0x42, 0x4d, 0x49, 0x54, 0x54, 0x45, 0x44, 0x10, 0x04, 0x32, 0xc9, 0x03, 0x0a, + 0x11, 0x46, 0x69, 0x6e, 0x65, 0x54, 0x75, 0x6e, 0x69, 0x6e, 0x67, 0x53, 0x65, 0x72, 0x76, 0x69, + 0x63, 0x65, 0x12, 0x48, 0x0a, 0x0b, 0x43, 0x72, 0x65, 0x61, 0x74, 0x65, 0x4d, 0x6f, 0x64, 0x65, + 0x6c, 0x12, 0x1b, 0x2e, 0x67, 0x6f, 0x6f, 0x73, 0x65, 0x61, 0x69, 0x2e, 0x43, 0x72, 0x65, 0x61, + 0x74, 0x65, 0x4d, 0x6f, 0x64, 0x65, 0x6c, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x1c, + 0x2e, 0x67, 0x6f, 0x6f, 0x73, 0x65, 0x61, 0x69, 0x2e, 0x43, 0x72, 0x65, 0x61, 0x74, 0x65, 0x4d, + 0x6f, 0x64, 0x65, 0x6c, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x3f, 0x0a, 0x08, + 0x47, 0x65, 0x74, 0x4d, 0x6f, 0x64, 0x65, 0x6c, 0x12, 0x18, 0x2e, 0x67, 0x6f, 0x6f, 0x73, 0x65, + 0x61, 0x69, 0x2e, 0x47, 0x65, 0x74, 0x4d, 0x6f, 0x64, 0x65, 0x6c, 0x52, 0x65, 0x71, 0x75, 0x65, + 0x73, 0x74, 0x1a, 0x19, 0x2e, 0x67, 0x6f, 0x6f, 0x73, 0x65, 0x61, 0x69, 0x2e, 0x47, 0x65, 0x74, + 0x4d, 0x6f, 0x64, 0x65, 0x6c, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x48, 0x0a, + 0x0b, 0x55, 0x70, 0x64, 0x61, 0x74, 0x65, 0x4d, 0x6f, 0x64, 0x65, 0x6c, 0x12, 0x1b, 0x2e, 0x67, + 0x6f, 0x6f, 0x73, 0x65, 0x61, 0x69, 0x2e, 0x55, 0x70, 0x64, 0x61, 0x74, 0x65, 0x4d, 0x6f, 0x64, + 0x65, 0x6c, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x1c, 0x2e, 0x67, 0x6f, 0x6f, 0x73, + 0x65, 0x61, 0x69, 0x2e, 0x55, 0x70, 0x64, 0x61, 0x74, 0x65, 0x4d, 0x6f, 0x64, 0x65, 0x6c, 0x52, + 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x48, 0x0a, 0x0b, 0x44, 0x65, 0x6c, 0x65, 0x74, + 0x65, 0x4d, 0x6f, 0x64, 0x65, 0x6c, 0x12, 0x1b, 0x2e, 0x67, 0x6f, 0x6f, 0x73, 0x65, 0x61, 0x69, + 0x2e, 0x44, 0x65, 0x6c, 0x65, 0x74, 0x65, 0x4d, 0x6f, 0x64, 0x65, 0x6c, 0x52, 0x65, 0x71, 0x75, + 0x65, 0x73, 0x74, 0x1a, 0x1c, 0x2e, 0x67, 0x6f, 0x6f, 0x73, 0x65, 0x61, 0x69, 0x2e, 0x44, 0x65, + 0x6c, 0x65, 0x74, 0x65, 0x4d, 0x6f, 0x64, 0x65, 0x6c, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, + 0x65, 0x12, 0x4e, 0x0a, 0x0d, 0x52, 0x65, 0x73, 0x75, 0x62, 0x6d, 0x69, 0x74, 0x4d, 0x6f, 0x64, + 0x65, 0x6c, 0x12, 0x1d, 0x2e, 0x67, 0x6f, 0x6f, 0x73, 0x65, 0x61, 0x69, 0x2e, 0x52, 0x65, 0x73, + 0x75, 0x62, 0x6d, 0x69, 0x74, 0x4d, 0x6f, 0x64, 0x65, 0x6c, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, + 0x74, 0x1a, 0x1e, 0x2e, 0x67, 0x6f, 0x6f, 0x73, 0x65, 0x61, 0x69, 0x2e, 0x52, 0x65, 0x73, 0x75, + 0x62, 0x6d, 0x69, 0x74, 0x4d, 0x6f, 0x64, 0x65, 0x6c, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, + 0x65, 0x12, 0x45, 0x0a, 0x0a, 0x4c, 0x69, 0x73, 0x74, 0x4d, 0x6f, 0x64, 0x65, 0x6c, 0x73, 0x12, + 0x1a, 0x2e, 0x67, 0x6f, 0x6f, 0x73, 0x65, 0x61, 0x69, 0x2e, 0x4c, 0x69, 0x73, 0x74, 0x4d, 0x6f, + 0x64, 0x65, 0x6c, 0x73, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x1b, 0x2e, 0x67, 0x6f, + 0x6f, 0x73, 0x65, 0x61, 0x69, 0x2e, 0x4c, 0x69, 0x73, 0x74, 0x4d, 0x6f, 0x64, 0x65, 0x6c, 0x73, + 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x42, 0xa8, 0x01, 0x0a, 0x0b, 0x63, 0x6f, 0x6d, + 0x2e, 0x67, 0x6f, 0x6f, 0x73, 0x65, 0x61, 0x69, 0x42, 0x0f, 0x46, 0x69, 0x6e, 0x65, 0x74, 0x75, + 0x6e, 0x69, 0x6e, 0x67, 0x50, 0x72, 0x6f, 0x74, 0x6f, 0x50, 0x01, 0x5a, 0x4c, 0x67, 0x69, 0x74, + 0x68, 0x75, 0x62, 0x2e, 0x63, 0x6f, 0x6d, 0x2f, 0x73, 0x74, 0x61, 0x62, 0x69, 0x6c, 0x69, 0x74, + 0x79, 0x2d, 0x61, 0x69, 0x2f, 0x61, 0x70, 0x69, 0x2d, 0x69, 0x6e, 0x74, 0x65, 0x72, 0x66, 0x61, + 0x63, 0x65, 0x73, 0x2f, 0x73, 0x72, 0x63, 0x2f, 0x73, 0x74, 0x61, 0x62, 0x69, 0x6c, 0x69, 0x74, + 0x79, 0x5f, 0x61, 0x70, 0x69, 0x2f, 0x70, 0x6c, 0x61, 0x74, 0x66, 0x6f, 0x72, 0x6d, 0x2f, 0x66, + 0x69, 0x6e, 0x65, 0x74, 0x75, 0x6e, 0x69, 0x6e, 0x67, 0xa2, 0x02, 0x03, 0x47, 0x58, 0x58, 0xaa, + 0x02, 0x07, 0x47, 0x6f, 0x6f, 0x73, 0x65, 0x61, 0x69, 0xca, 0x02, 0x07, 0x47, 0x6f, 0x6f, 0x73, + 0x65, 0x61, 0x69, 0xe2, 0x02, 0x13, 0x47, 0x6f, 0x6f, 0x73, 0x65, 0x61, 0x69, 0x5c, 0x47, 0x50, + 0x42, 0x4d, 0x65, 0x74, 0x61, 0x64, 0x61, 0x74, 0x61, 0xea, 0x02, 0x07, 0x47, 0x6f, 0x6f, 0x73, + 0x65, 0x61, 0x69, 0x62, 0x06, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x33, +} + +var ( + file_stability_api_platform_finetuning_finetuning_proto_rawDescOnce sync.Once + file_stability_api_platform_finetuning_finetuning_proto_rawDescData = file_stability_api_platform_finetuning_finetuning_proto_rawDesc +) + +func file_stability_api_platform_finetuning_finetuning_proto_rawDescGZIP() []byte { + file_stability_api_platform_finetuning_finetuning_proto_rawDescOnce.Do(func() { + file_stability_api_platform_finetuning_finetuning_proto_rawDescData = protoimpl.X.CompressGZIP(file_stability_api_platform_finetuning_finetuning_proto_rawDescData) + }) + return file_stability_api_platform_finetuning_finetuning_proto_rawDescData +} + +var file_stability_api_platform_finetuning_finetuning_proto_enumTypes = make([]protoimpl.EnumInfo, 2) +var file_stability_api_platform_finetuning_finetuning_proto_msgTypes = make([]protoimpl.MessageInfo, 13) +var file_stability_api_platform_finetuning_finetuning_proto_goTypes = []interface{}{ + (FineTuningMode)(0), // 0: gooseai.FineTuningMode + (FineTuningStatus)(0), // 1: gooseai.FineTuningStatus + (*FineTuningModel)(nil), // 2: gooseai.FineTuningModel + (*CreateModelRequest)(nil), // 3: gooseai.CreateModelRequest + (*CreateModelResponse)(nil), // 4: gooseai.CreateModelResponse + (*GetModelRequest)(nil), // 5: gooseai.GetModelRequest + (*GetModelResponse)(nil), // 6: gooseai.GetModelResponse + (*UpdateModelRequest)(nil), // 7: gooseai.UpdateModelRequest + (*UpdateModelResponse)(nil), // 8: gooseai.UpdateModelResponse + (*DeleteModelRequest)(nil), // 9: gooseai.DeleteModelRequest + (*DeleteModelResponse)(nil), // 10: gooseai.DeleteModelResponse + (*ResubmitModelRequest)(nil), // 11: gooseai.ResubmitModelRequest + (*ResubmitModelResponse)(nil), // 12: gooseai.ResubmitModelResponse + (*ListModelsRequest)(nil), // 13: gooseai.ListModelsRequest + (*ListModelsResponse)(nil), // 14: gooseai.ListModelsResponse + (*structpb.Struct)(nil), // 15: google.protobuf.Struct +} +var file_stability_api_platform_finetuning_finetuning_proto_depIdxs = []int32{ + 0, // 0: gooseai.FineTuningModel.mode:type_name -> gooseai.FineTuningMode + 1, // 1: gooseai.FineTuningModel.status:type_name -> gooseai.FineTuningStatus + 0, // 2: gooseai.CreateModelRequest.mode:type_name -> gooseai.FineTuningMode + 15, // 3: gooseai.CreateModelRequest.extras:type_name -> google.protobuf.Struct + 2, // 4: gooseai.CreateModelResponse.model:type_name -> gooseai.FineTuningModel + 2, // 5: gooseai.GetModelResponse.model:type_name -> gooseai.FineTuningModel + 0, // 6: gooseai.UpdateModelRequest.mode:type_name -> gooseai.FineTuningMode + 2, // 7: gooseai.UpdateModelResponse.model:type_name -> gooseai.FineTuningModel + 2, // 8: gooseai.DeleteModelResponse.model:type_name -> gooseai.FineTuningModel + 2, // 9: gooseai.ResubmitModelResponse.model:type_name -> gooseai.FineTuningModel + 2, // 10: gooseai.ListModelsResponse.models:type_name -> gooseai.FineTuningModel + 3, // 11: gooseai.FineTuningService.CreateModel:input_type -> gooseai.CreateModelRequest + 5, // 12: gooseai.FineTuningService.GetModel:input_type -> gooseai.GetModelRequest + 7, // 13: gooseai.FineTuningService.UpdateModel:input_type -> gooseai.UpdateModelRequest + 9, // 14: gooseai.FineTuningService.DeleteModel:input_type -> gooseai.DeleteModelRequest + 11, // 15: gooseai.FineTuningService.ResubmitModel:input_type -> gooseai.ResubmitModelRequest + 13, // 16: gooseai.FineTuningService.ListModels:input_type -> gooseai.ListModelsRequest + 4, // 17: gooseai.FineTuningService.CreateModel:output_type -> gooseai.CreateModelResponse + 6, // 18: gooseai.FineTuningService.GetModel:output_type -> gooseai.GetModelResponse + 8, // 19: gooseai.FineTuningService.UpdateModel:output_type -> gooseai.UpdateModelResponse + 10, // 20: gooseai.FineTuningService.DeleteModel:output_type -> gooseai.DeleteModelResponse + 12, // 21: gooseai.FineTuningService.ResubmitModel:output_type -> gooseai.ResubmitModelResponse + 14, // 22: gooseai.FineTuningService.ListModels:output_type -> gooseai.ListModelsResponse + 17, // [17:23] is the sub-list for method output_type + 11, // [11:17] is the sub-list for method input_type + 11, // [11:11] is the sub-list for extension type_name + 11, // [11:11] is the sub-list for extension extendee + 0, // [0:11] is the sub-list for field type_name +} + +func init() { file_stability_api_platform_finetuning_finetuning_proto_init() } +func file_stability_api_platform_finetuning_finetuning_proto_init() { + if File_stability_api_platform_finetuning_finetuning_proto != nil { + return + } + if !protoimpl.UnsafeEnabled { + file_stability_api_platform_finetuning_finetuning_proto_msgTypes[0].Exporter = func(v interface{}, i int) interface{} { + switch v := v.(*FineTuningModel); i { + case 0: + return &v.state + case 1: + return &v.sizeCache + case 2: + return &v.unknownFields + default: + return nil + } + } + file_stability_api_platform_finetuning_finetuning_proto_msgTypes[1].Exporter = func(v interface{}, i int) interface{} { + switch v := v.(*CreateModelRequest); i { + case 0: + return &v.state + case 1: + return &v.sizeCache + case 2: + return &v.unknownFields + default: + return nil + } + } + file_stability_api_platform_finetuning_finetuning_proto_msgTypes[2].Exporter = func(v interface{}, i int) interface{} { + switch v := v.(*CreateModelResponse); i { + case 0: + return &v.state + case 1: + return &v.sizeCache + case 2: + return &v.unknownFields + default: + return nil + } + } + file_stability_api_platform_finetuning_finetuning_proto_msgTypes[3].Exporter = func(v interface{}, i int) interface{} { + switch v := v.(*GetModelRequest); i { + case 0: + return &v.state + case 1: + return &v.sizeCache + case 2: + return &v.unknownFields + default: + return nil + } + } + file_stability_api_platform_finetuning_finetuning_proto_msgTypes[4].Exporter = func(v interface{}, i int) interface{} { + switch v := v.(*GetModelResponse); i { + case 0: + return &v.state + case 1: + return &v.sizeCache + case 2: + return &v.unknownFields + default: + return nil + } + } + file_stability_api_platform_finetuning_finetuning_proto_msgTypes[5].Exporter = func(v interface{}, i int) interface{} { + switch v := v.(*UpdateModelRequest); i { + case 0: + return &v.state + case 1: + return &v.sizeCache + case 2: + return &v.unknownFields + default: + return nil + } + } + file_stability_api_platform_finetuning_finetuning_proto_msgTypes[6].Exporter = func(v interface{}, i int) interface{} { + switch v := v.(*UpdateModelResponse); i { + case 0: + return &v.state + case 1: + return &v.sizeCache + case 2: + return &v.unknownFields + default: + return nil + } + } + file_stability_api_platform_finetuning_finetuning_proto_msgTypes[7].Exporter = func(v interface{}, i int) interface{} { + switch v := v.(*DeleteModelRequest); i { + case 0: + return &v.state + case 1: + return &v.sizeCache + case 2: + return &v.unknownFields + default: + return nil + } + } + file_stability_api_platform_finetuning_finetuning_proto_msgTypes[8].Exporter = func(v interface{}, i int) interface{} { + switch v := v.(*DeleteModelResponse); i { + case 0: + return &v.state + case 1: + return &v.sizeCache + case 2: + return &v.unknownFields + default: + return nil + } + } + file_stability_api_platform_finetuning_finetuning_proto_msgTypes[9].Exporter = func(v interface{}, i int) interface{} { + switch v := v.(*ResubmitModelRequest); i { + case 0: + return &v.state + case 1: + return &v.sizeCache + case 2: + return &v.unknownFields + default: + return nil + } + } + file_stability_api_platform_finetuning_finetuning_proto_msgTypes[10].Exporter = func(v interface{}, i int) interface{} { + switch v := v.(*ResubmitModelResponse); i { + case 0: + return &v.state + case 1: + return &v.sizeCache + case 2: + return &v.unknownFields + default: + return nil + } + } + file_stability_api_platform_finetuning_finetuning_proto_msgTypes[11].Exporter = func(v interface{}, i int) interface{} { + switch v := v.(*ListModelsRequest); i { + case 0: + return &v.state + case 1: + return &v.sizeCache + case 2: + return &v.unknownFields + default: + return nil + } + } + file_stability_api_platform_finetuning_finetuning_proto_msgTypes[12].Exporter = func(v interface{}, i int) interface{} { + switch v := v.(*ListModelsResponse); i { + case 0: + return &v.state + case 1: + return &v.sizeCache + case 2: + return &v.unknownFields + default: + return nil + } + } + } + file_stability_api_platform_finetuning_finetuning_proto_msgTypes[0].OneofWrappers = []interface{}{} + file_stability_api_platform_finetuning_finetuning_proto_msgTypes[1].OneofWrappers = []interface{}{} + file_stability_api_platform_finetuning_finetuning_proto_msgTypes[5].OneofWrappers = []interface{}{} + file_stability_api_platform_finetuning_finetuning_proto_msgTypes[11].OneofWrappers = []interface{}{ + (*ListModelsRequest_OrgId)(nil), + (*ListModelsRequest_UserId)(nil), + } + type x struct{} + out := protoimpl.TypeBuilder{ + File: protoimpl.DescBuilder{ + GoPackagePath: reflect.TypeOf(x{}).PkgPath(), + RawDescriptor: file_stability_api_platform_finetuning_finetuning_proto_rawDesc, + NumEnums: 2, + NumMessages: 13, + NumExtensions: 0, + NumServices: 1, + }, + GoTypes: file_stability_api_platform_finetuning_finetuning_proto_goTypes, + DependencyIndexes: file_stability_api_platform_finetuning_finetuning_proto_depIdxs, + EnumInfos: file_stability_api_platform_finetuning_finetuning_proto_enumTypes, + MessageInfos: file_stability_api_platform_finetuning_finetuning_proto_msgTypes, + }.Build() + File_stability_api_platform_finetuning_finetuning_proto = out.File + file_stability_api_platform_finetuning_finetuning_proto_rawDesc = nil + file_stability_api_platform_finetuning_finetuning_proto_goTypes = nil + file_stability_api_platform_finetuning_finetuning_proto_depIdxs = nil +} diff --git a/src/stability_api/platform/finetuning/finetuning_connect.d.ts b/src/stability_api/platform/finetuning/finetuning_connect.d.ts new file mode 100644 index 0000000..f238172 --- /dev/null +++ b/src/stability_api/platform/finetuning/finetuning_connect.d.ts @@ -0,0 +1,83 @@ +// @generated by protoc-gen-connect-es v0.12.0 +// @generated from file stability_api/platform/finetuning/finetuning.proto (package gooseai, syntax proto3) +/* eslint-disable */ +// @ts-nocheck + +import { CreateModelRequest, CreateModelResponse, DeleteModelRequest, DeleteModelResponse, GetModelRequest, GetModelResponse, ListModelsRequest, ListModelsResponse, ResubmitModelRequest, ResubmitModelResponse, UpdateModelRequest, UpdateModelResponse } from "./finetuning_pb.js"; +import { MethodKind } from "@bufbuild/protobuf"; + +/** + * @generated from service gooseai.FineTuningService + */ +export declare const FineTuningService: { + readonly typeName: "gooseai.FineTuningService", + readonly methods: { + /** + * Create a new model and begin the fine tuning process + * + * @generated from rpc gooseai.FineTuningService.CreateModel + */ + readonly createModel: { + readonly name: "CreateModel", + readonly I: typeof CreateModelRequest, + readonly O: typeof CreateModelResponse, + readonly kind: MethodKind.Unary, + }, + /** + * Get a FineTuningModel + * + * @generated from rpc gooseai.FineTuningService.GetModel + */ + readonly getModel: { + readonly name: "GetModel", + readonly I: typeof GetModelRequest, + readonly O: typeof GetModelResponse, + readonly kind: MethodKind.Unary, + }, + /** + * Update a FineTuningModel by id + * + * @generated from rpc gooseai.FineTuningService.UpdateModel + */ + readonly updateModel: { + readonly name: "UpdateModel", + readonly I: typeof UpdateModelRequest, + readonly O: typeof UpdateModelResponse, + readonly kind: MethodKind.Unary, + }, + /** + * Delete a fine tuned model + * + * @generated from rpc gooseai.FineTuningService.DeleteModel + */ + readonly deleteModel: { + readonly name: "DeleteModel", + readonly I: typeof DeleteModelRequest, + readonly O: typeof DeleteModelResponse, + readonly kind: MethodKind.Unary, + }, + /** + * Re-run training, does not create a new model + * + * @generated from rpc gooseai.FineTuningService.ResubmitModel + */ + readonly resubmitModel: { + readonly name: "ResubmitModel", + readonly I: typeof ResubmitModelRequest, + readonly O: typeof ResubmitModelResponse, + readonly kind: MethodKind.Unary, + }, + /** + * List all the fine tuned models for an organization or user + * + * @generated from rpc gooseai.FineTuningService.ListModels + */ + readonly listModels: { + readonly name: "ListModels", + readonly I: typeof ListModelsRequest, + readonly O: typeof ListModelsResponse, + readonly kind: MethodKind.Unary, + }, + } +}; + diff --git a/src/stability_api/platform/finetuning/finetuning_connect.js b/src/stability_api/platform/finetuning/finetuning_connect.js new file mode 100644 index 0000000..b2215db --- /dev/null +++ b/src/stability_api/platform/finetuning/finetuning_connect.js @@ -0,0 +1,83 @@ +// @generated by protoc-gen-connect-es v0.12.0 +// @generated from file stability_api/platform/finetuning/finetuning.proto (package gooseai, syntax proto3) +/* eslint-disable */ +// @ts-nocheck + +import { CreateModelRequest, CreateModelResponse, DeleteModelRequest, DeleteModelResponse, GetModelRequest, GetModelResponse, ListModelsRequest, ListModelsResponse, ResubmitModelRequest, ResubmitModelResponse, UpdateModelRequest, UpdateModelResponse } from "./finetuning_pb.js"; +import { MethodKind } from "@bufbuild/protobuf"; + +/** + * @generated from service gooseai.FineTuningService + */ +export const FineTuningService = { + typeName: "gooseai.FineTuningService", + methods: { + /** + * Create a new model and begin the fine tuning process + * + * @generated from rpc gooseai.FineTuningService.CreateModel + */ + createModel: { + name: "CreateModel", + I: CreateModelRequest, + O: CreateModelResponse, + kind: MethodKind.Unary, + }, + /** + * Get a FineTuningModel + * + * @generated from rpc gooseai.FineTuningService.GetModel + */ + getModel: { + name: "GetModel", + I: GetModelRequest, + O: GetModelResponse, + kind: MethodKind.Unary, + }, + /** + * Update a FineTuningModel by id + * + * @generated from rpc gooseai.FineTuningService.UpdateModel + */ + updateModel: { + name: "UpdateModel", + I: UpdateModelRequest, + O: UpdateModelResponse, + kind: MethodKind.Unary, + }, + /** + * Delete a fine tuned model + * + * @generated from rpc gooseai.FineTuningService.DeleteModel + */ + deleteModel: { + name: "DeleteModel", + I: DeleteModelRequest, + O: DeleteModelResponse, + kind: MethodKind.Unary, + }, + /** + * Re-run training, does not create a new model + * + * @generated from rpc gooseai.FineTuningService.ResubmitModel + */ + resubmitModel: { + name: "ResubmitModel", + I: ResubmitModelRequest, + O: ResubmitModelResponse, + kind: MethodKind.Unary, + }, + /** + * List all the fine tuned models for an organization or user + * + * @generated from rpc gooseai.FineTuningService.ListModels + */ + listModels: { + name: "ListModels", + I: ListModelsRequest, + O: ListModelsResponse, + kind: MethodKind.Unary, + }, + } +}; + diff --git a/src/stability_api/platform/finetuning/finetuning_grpc.pb.go b/src/stability_api/platform/finetuning/finetuning_grpc.pb.go new file mode 100644 index 0000000..78255b6 --- /dev/null +++ b/src/stability_api/platform/finetuning/finetuning_grpc.pb.go @@ -0,0 +1,306 @@ +// Code generated by protoc-gen-go-grpc. DO NOT EDIT. +// versions: +// - protoc-gen-go-grpc v1.3.0 +// - protoc (unknown) +// source: stability_api/platform/finetuning/finetuning.proto + +package finetuning + +import ( + context "context" + grpc "google.golang.org/grpc" + codes "google.golang.org/grpc/codes" + status "google.golang.org/grpc/status" +) + +// This is a compile-time assertion to ensure that this generated file +// is compatible with the grpc package it is being compiled against. +// Requires gRPC-Go v1.32.0 or later. +const _ = grpc.SupportPackageIsVersion7 + +const ( + FineTuningService_CreateModel_FullMethodName = "/gooseai.FineTuningService/CreateModel" + FineTuningService_GetModel_FullMethodName = "/gooseai.FineTuningService/GetModel" + FineTuningService_UpdateModel_FullMethodName = "/gooseai.FineTuningService/UpdateModel" + FineTuningService_DeleteModel_FullMethodName = "/gooseai.FineTuningService/DeleteModel" + FineTuningService_ResubmitModel_FullMethodName = "/gooseai.FineTuningService/ResubmitModel" + FineTuningService_ListModels_FullMethodName = "/gooseai.FineTuningService/ListModels" +) + +// FineTuningServiceClient is the client API for FineTuningService service. +// +// For semantics around ctx use and closing/ending streaming RPCs, please refer to https://pkg.go.dev/google.golang.org/grpc/?tab=doc#ClientConn.NewStream. +type FineTuningServiceClient interface { + // Create a new model and begin the fine tuning process + CreateModel(ctx context.Context, in *CreateModelRequest, opts ...grpc.CallOption) (*CreateModelResponse, error) + // Get a FineTuningModel + GetModel(ctx context.Context, in *GetModelRequest, opts ...grpc.CallOption) (*GetModelResponse, error) + // Update a FineTuningModel by id + UpdateModel(ctx context.Context, in *UpdateModelRequest, opts ...grpc.CallOption) (*UpdateModelResponse, error) + // Delete a fine tuned model + DeleteModel(ctx context.Context, in *DeleteModelRequest, opts ...grpc.CallOption) (*DeleteModelResponse, error) + // Re-run training, does not create a new model + ResubmitModel(ctx context.Context, in *ResubmitModelRequest, opts ...grpc.CallOption) (*ResubmitModelResponse, error) + // List all the fine tuned models for an organization or user + ListModels(ctx context.Context, in *ListModelsRequest, opts ...grpc.CallOption) (*ListModelsResponse, error) +} + +type fineTuningServiceClient struct { + cc grpc.ClientConnInterface +} + +func NewFineTuningServiceClient(cc grpc.ClientConnInterface) FineTuningServiceClient { + return &fineTuningServiceClient{cc} +} + +func (c *fineTuningServiceClient) CreateModel(ctx context.Context, in *CreateModelRequest, opts ...grpc.CallOption) (*CreateModelResponse, error) { + out := new(CreateModelResponse) + err := c.cc.Invoke(ctx, FineTuningService_CreateModel_FullMethodName, in, out, opts...) + if err != nil { + return nil, err + } + return out, nil +} + +func (c *fineTuningServiceClient) GetModel(ctx context.Context, in *GetModelRequest, opts ...grpc.CallOption) (*GetModelResponse, error) { + out := new(GetModelResponse) + err := c.cc.Invoke(ctx, FineTuningService_GetModel_FullMethodName, in, out, opts...) + if err != nil { + return nil, err + } + return out, nil +} + +func (c *fineTuningServiceClient) UpdateModel(ctx context.Context, in *UpdateModelRequest, opts ...grpc.CallOption) (*UpdateModelResponse, error) { + out := new(UpdateModelResponse) + err := c.cc.Invoke(ctx, FineTuningService_UpdateModel_FullMethodName, in, out, opts...) + if err != nil { + return nil, err + } + return out, nil +} + +func (c *fineTuningServiceClient) DeleteModel(ctx context.Context, in *DeleteModelRequest, opts ...grpc.CallOption) (*DeleteModelResponse, error) { + out := new(DeleteModelResponse) + err := c.cc.Invoke(ctx, FineTuningService_DeleteModel_FullMethodName, in, out, opts...) + if err != nil { + return nil, err + } + return out, nil +} + +func (c *fineTuningServiceClient) ResubmitModel(ctx context.Context, in *ResubmitModelRequest, opts ...grpc.CallOption) (*ResubmitModelResponse, error) { + out := new(ResubmitModelResponse) + err := c.cc.Invoke(ctx, FineTuningService_ResubmitModel_FullMethodName, in, out, opts...) + if err != nil { + return nil, err + } + return out, nil +} + +func (c *fineTuningServiceClient) ListModels(ctx context.Context, in *ListModelsRequest, opts ...grpc.CallOption) (*ListModelsResponse, error) { + out := new(ListModelsResponse) + err := c.cc.Invoke(ctx, FineTuningService_ListModels_FullMethodName, in, out, opts...) + if err != nil { + return nil, err + } + return out, nil +} + +// FineTuningServiceServer is the server API for FineTuningService service. +// All implementations must embed UnimplementedFineTuningServiceServer +// for forward compatibility +type FineTuningServiceServer interface { + // Create a new model and begin the fine tuning process + CreateModel(context.Context, *CreateModelRequest) (*CreateModelResponse, error) + // Get a FineTuningModel + GetModel(context.Context, *GetModelRequest) (*GetModelResponse, error) + // Update a FineTuningModel by id + UpdateModel(context.Context, *UpdateModelRequest) (*UpdateModelResponse, error) + // Delete a fine tuned model + DeleteModel(context.Context, *DeleteModelRequest) (*DeleteModelResponse, error) + // Re-run training, does not create a new model + ResubmitModel(context.Context, *ResubmitModelRequest) (*ResubmitModelResponse, error) + // List all the fine tuned models for an organization or user + ListModels(context.Context, *ListModelsRequest) (*ListModelsResponse, error) + mustEmbedUnimplementedFineTuningServiceServer() +} + +// UnimplementedFineTuningServiceServer must be embedded to have forward compatible implementations. +type UnimplementedFineTuningServiceServer struct { +} + +func (UnimplementedFineTuningServiceServer) CreateModel(context.Context, *CreateModelRequest) (*CreateModelResponse, error) { + return nil, status.Errorf(codes.Unimplemented, "method CreateModel not implemented") +} +func (UnimplementedFineTuningServiceServer) GetModel(context.Context, *GetModelRequest) (*GetModelResponse, error) { + return nil, status.Errorf(codes.Unimplemented, "method GetModel not implemented") +} +func (UnimplementedFineTuningServiceServer) UpdateModel(context.Context, *UpdateModelRequest) (*UpdateModelResponse, error) { + return nil, status.Errorf(codes.Unimplemented, "method UpdateModel not implemented") +} +func (UnimplementedFineTuningServiceServer) DeleteModel(context.Context, *DeleteModelRequest) (*DeleteModelResponse, error) { + return nil, status.Errorf(codes.Unimplemented, "method DeleteModel not implemented") +} +func (UnimplementedFineTuningServiceServer) ResubmitModel(context.Context, *ResubmitModelRequest) (*ResubmitModelResponse, error) { + return nil, status.Errorf(codes.Unimplemented, "method ResubmitModel not implemented") +} +func (UnimplementedFineTuningServiceServer) ListModels(context.Context, *ListModelsRequest) (*ListModelsResponse, error) { + return nil, status.Errorf(codes.Unimplemented, "method ListModels not implemented") +} +func (UnimplementedFineTuningServiceServer) mustEmbedUnimplementedFineTuningServiceServer() {} + +// UnsafeFineTuningServiceServer may be embedded to opt out of forward compatibility for this service. +// Use of this interface is not recommended, as added methods to FineTuningServiceServer will +// result in compilation errors. +type UnsafeFineTuningServiceServer interface { + mustEmbedUnimplementedFineTuningServiceServer() +} + +func RegisterFineTuningServiceServer(s grpc.ServiceRegistrar, srv FineTuningServiceServer) { + s.RegisterService(&FineTuningService_ServiceDesc, srv) +} + +func _FineTuningService_CreateModel_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) { + in := new(CreateModelRequest) + if err := dec(in); err != nil { + return nil, err + } + if interceptor == nil { + return srv.(FineTuningServiceServer).CreateModel(ctx, in) + } + info := &grpc.UnaryServerInfo{ + Server: srv, + FullMethod: FineTuningService_CreateModel_FullMethodName, + } + handler := func(ctx context.Context, req interface{}) (interface{}, error) { + return srv.(FineTuningServiceServer).CreateModel(ctx, req.(*CreateModelRequest)) + } + return interceptor(ctx, in, info, handler) +} + +func _FineTuningService_GetModel_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) { + in := new(GetModelRequest) + if err := dec(in); err != nil { + return nil, err + } + if interceptor == nil { + return srv.(FineTuningServiceServer).GetModel(ctx, in) + } + info := &grpc.UnaryServerInfo{ + Server: srv, + FullMethod: FineTuningService_GetModel_FullMethodName, + } + handler := func(ctx context.Context, req interface{}) (interface{}, error) { + return srv.(FineTuningServiceServer).GetModel(ctx, req.(*GetModelRequest)) + } + return interceptor(ctx, in, info, handler) +} + +func _FineTuningService_UpdateModel_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) { + in := new(UpdateModelRequest) + if err := dec(in); err != nil { + return nil, err + } + if interceptor == nil { + return srv.(FineTuningServiceServer).UpdateModel(ctx, in) + } + info := &grpc.UnaryServerInfo{ + Server: srv, + FullMethod: FineTuningService_UpdateModel_FullMethodName, + } + handler := func(ctx context.Context, req interface{}) (interface{}, error) { + return srv.(FineTuningServiceServer).UpdateModel(ctx, req.(*UpdateModelRequest)) + } + return interceptor(ctx, in, info, handler) +} + +func _FineTuningService_DeleteModel_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) { + in := new(DeleteModelRequest) + if err := dec(in); err != nil { + return nil, err + } + if interceptor == nil { + return srv.(FineTuningServiceServer).DeleteModel(ctx, in) + } + info := &grpc.UnaryServerInfo{ + Server: srv, + FullMethod: FineTuningService_DeleteModel_FullMethodName, + } + handler := func(ctx context.Context, req interface{}) (interface{}, error) { + return srv.(FineTuningServiceServer).DeleteModel(ctx, req.(*DeleteModelRequest)) + } + return interceptor(ctx, in, info, handler) +} + +func _FineTuningService_ResubmitModel_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) { + in := new(ResubmitModelRequest) + if err := dec(in); err != nil { + return nil, err + } + if interceptor == nil { + return srv.(FineTuningServiceServer).ResubmitModel(ctx, in) + } + info := &grpc.UnaryServerInfo{ + Server: srv, + FullMethod: FineTuningService_ResubmitModel_FullMethodName, + } + handler := func(ctx context.Context, req interface{}) (interface{}, error) { + return srv.(FineTuningServiceServer).ResubmitModel(ctx, req.(*ResubmitModelRequest)) + } + return interceptor(ctx, in, info, handler) +} + +func _FineTuningService_ListModels_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) { + in := new(ListModelsRequest) + if err := dec(in); err != nil { + return nil, err + } + if interceptor == nil { + return srv.(FineTuningServiceServer).ListModels(ctx, in) + } + info := &grpc.UnaryServerInfo{ + Server: srv, + FullMethod: FineTuningService_ListModels_FullMethodName, + } + handler := func(ctx context.Context, req interface{}) (interface{}, error) { + return srv.(FineTuningServiceServer).ListModels(ctx, req.(*ListModelsRequest)) + } + return interceptor(ctx, in, info, handler) +} + +// FineTuningService_ServiceDesc is the grpc.ServiceDesc for FineTuningService service. +// It's only intended for direct use with grpc.RegisterService, +// and not to be introspected or modified (even as a copy) +var FineTuningService_ServiceDesc = grpc.ServiceDesc{ + ServiceName: "gooseai.FineTuningService", + HandlerType: (*FineTuningServiceServer)(nil), + Methods: []grpc.MethodDesc{ + { + MethodName: "CreateModel", + Handler: _FineTuningService_CreateModel_Handler, + }, + { + MethodName: "GetModel", + Handler: _FineTuningService_GetModel_Handler, + }, + { + MethodName: "UpdateModel", + Handler: _FineTuningService_UpdateModel_Handler, + }, + { + MethodName: "DeleteModel", + Handler: _FineTuningService_DeleteModel_Handler, + }, + { + MethodName: "ResubmitModel", + Handler: _FineTuningService_ResubmitModel_Handler, + }, + { + MethodName: "ListModels", + Handler: _FineTuningService_ListModels_Handler, + }, + }, + Streams: []grpc.StreamDesc{}, + Metadata: "stability_api/platform/finetuning/finetuning.proto", +} diff --git a/src/stability_api/platform/finetuning/finetuning_pb.d.ts b/src/stability_api/platform/finetuning/finetuning_pb.d.ts new file mode 100644 index 0000000..edee9b4 --- /dev/null +++ b/src/stability_api/platform/finetuning/finetuning_pb.d.ts @@ -0,0 +1,549 @@ +// @generated by protoc-gen-es v1.3.0 +// @generated from file stability_api/platform/finetuning/finetuning.proto (package gooseai, syntax proto3) +/* eslint-disable */ +// @ts-nocheck + +import type { BinaryReadOptions, FieldList, JsonReadOptions, JsonValue, PartialMessage, PlainMessage, Struct } from "@bufbuild/protobuf"; +import { Message, proto3 } from "@bufbuild/protobuf"; + +/** + * @generated from enum gooseai.FineTuningMode + */ +export declare enum FineTuningMode { + /** + * No mode specified + * + * @generated from enum value: FINE_TUNING_MODE_UNSPECIFIED = 0; + */ + UNSPECIFIED = 0, + + /** + * Fine tuning a face model + * + * @generated from enum value: FINE_TUNING_MODE_FACE = 1; + */ + FACE = 1, + + /** + * Fine tuning a style model + * + * @generated from enum value: FINE_TUNING_MODE_STYLE = 2; + */ + STYLE = 2, + + /** + * Fine tuning an object model + * + * @generated from enum value: FINE_TUNING_MODE_OBJECT = 3; + */ + OBJECT = 3, +} + +/** + * @generated from enum gooseai.FineTuningStatus + */ +export declare enum FineTuningStatus { + /** + * Model not yet started + * + * @generated from enum value: FINE_TUNING_STATUS_NOT_STARTED = 0; + */ + NOT_STARTED = 0, + + /** + * Model is currently running + * + * @generated from enum value: FINE_TUNING_STATUS_RUNNING = 1; + */ + RUNNING = 1, + + /** + * Model has completed successfully + * + * @generated from enum value: FINE_TUNING_STATUS_COMPLETED = 2; + */ + COMPLETED = 2, + + /** + * Model has failed + * + * @generated from enum value: FINE_TUNING_STATUS_FAILED = 3; + */ + FAILED = 3, + + /** + * Model has been submitted + * + * @generated from enum value: FINE_TUNING_STATUS_SUBMITTED = 4; + */ + SUBMITTED = 4, +} + +/** + * @generated from message gooseai.FineTuningModel + */ +export declare class FineTuningModel extends Message { + /** + * ID of the model, UUIDv4 + * + * @generated from field: string id = 1; + */ + id: string; + + /** + * ID of user who created the model + * + * @generated from field: string user_id = 2; + */ + userId: string; + + /** + * a readable model name + * + * @generated from field: string name = 3; + */ + name: string; + + /** + * the mode of the model + * + * @generated from field: optional gooseai.FineTuningMode mode = 4; + */ + mode?: FineTuningMode; + + /** + * freeform text description of object, should only be set when mode is OBJECT + * + * @generated from field: optional string object_prompt = 5; + */ + objectPrompt?: string; + + /** + * project ID with assets to be used for fine tuning + * + * @generated from field: string project_id = 6; + */ + projectId: string; + + /** + * duration in seconds for how long the model took to train + * + * @generated from field: double duration = 7; + */ + duration: number; + + /** + * the current status of the model + * + * @generated from field: gooseai.FineTuningStatus status = 8; + */ + status: FineTuningStatus; + + /** + * the engineId of a fine-tuneable Stability model + * + * @generated from field: string engine_id = 9; + */ + engineId: string; + + /** + * If a model's training failed, this will contain the reason + * + * @generated from field: optional string failure_reason = 10; + */ + failureReason?: string; + + constructor(data?: PartialMessage); + + static readonly runtime: typeof proto3; + static readonly typeName = "gooseai.FineTuningModel"; + static readonly fields: FieldList; + + static fromBinary(bytes: Uint8Array, options?: Partial): FineTuningModel; + + static fromJson(jsonValue: JsonValue, options?: Partial): FineTuningModel; + + static fromJsonString(jsonString: string, options?: Partial): FineTuningModel; + + static equals(a: FineTuningModel | PlainMessage | undefined, b: FineTuningModel | PlainMessage | undefined): boolean; +} + +/** + * @generated from message gooseai.CreateModelRequest + */ +export declare class CreateModelRequest extends Message { + /** + * a readable model name + * + * @generated from field: string name = 1; + */ + name: string; + + /** + * the mode of the model + * + * @generated from field: optional gooseai.FineTuningMode mode = 2; + */ + mode?: FineTuningMode; + + /** + * freeform text description of object, should only be set when mode is OBJECT + * + * @generated from field: optional string object_prompt = 3; + */ + objectPrompt?: string; + + /** + * the project_id with assets to be used for fine tuning + * + * @generated from field: string project_id = 4; + */ + projectId: string; + + /** + * the engineId of an fine-tuneable Stability model + * + * @generated from field: string engine_id = 5; + */ + engineId: string; + + /** + * for development use + * + * @generated from field: optional google.protobuf.Struct extras = 2047; + */ + extras?: Struct; + + constructor(data?: PartialMessage); + + static readonly runtime: typeof proto3; + static readonly typeName = "gooseai.CreateModelRequest"; + static readonly fields: FieldList; + + static fromBinary(bytes: Uint8Array, options?: Partial): CreateModelRequest; + + static fromJson(jsonValue: JsonValue, options?: Partial): CreateModelRequest; + + static fromJsonString(jsonString: string, options?: Partial): CreateModelRequest; + + static equals(a: CreateModelRequest | PlainMessage | undefined, b: CreateModelRequest | PlainMessage | undefined): boolean; +} + +/** + * @generated from message gooseai.CreateModelResponse + */ +export declare class CreateModelResponse extends Message { + /** + * @generated from field: gooseai.FineTuningModel model = 1; + */ + model?: FineTuningModel; + + constructor(data?: PartialMessage); + + static readonly runtime: typeof proto3; + static readonly typeName = "gooseai.CreateModelResponse"; + static readonly fields: FieldList; + + static fromBinary(bytes: Uint8Array, options?: Partial): CreateModelResponse; + + static fromJson(jsonValue: JsonValue, options?: Partial): CreateModelResponse; + + static fromJsonString(jsonString: string, options?: Partial): CreateModelResponse; + + static equals(a: CreateModelResponse | PlainMessage | undefined, b: CreateModelResponse | PlainMessage | undefined): boolean; +} + +/** + * @generated from message gooseai.GetModelRequest + */ +export declare class GetModelRequest extends Message { + /** + * ID of the model + * + * @generated from field: string id = 1; + */ + id: string; + + constructor(data?: PartialMessage); + + static readonly runtime: typeof proto3; + static readonly typeName = "gooseai.GetModelRequest"; + static readonly fields: FieldList; + + static fromBinary(bytes: Uint8Array, options?: Partial): GetModelRequest; + + static fromJson(jsonValue: JsonValue, options?: Partial): GetModelRequest; + + static fromJsonString(jsonString: string, options?: Partial): GetModelRequest; + + static equals(a: GetModelRequest | PlainMessage | undefined, b: GetModelRequest | PlainMessage | undefined): boolean; +} + +/** + * @generated from message gooseai.GetModelResponse + */ +export declare class GetModelResponse extends Message { + /** + * @generated from field: gooseai.FineTuningModel model = 1; + */ + model?: FineTuningModel; + + constructor(data?: PartialMessage); + + static readonly runtime: typeof proto3; + static readonly typeName = "gooseai.GetModelResponse"; + static readonly fields: FieldList; + + static fromBinary(bytes: Uint8Array, options?: Partial): GetModelResponse; + + static fromJson(jsonValue: JsonValue, options?: Partial): GetModelResponse; + + static fromJsonString(jsonString: string, options?: Partial): GetModelResponse; + + static equals(a: GetModelResponse | PlainMessage | undefined, b: GetModelResponse | PlainMessage | undefined): boolean; +} + +/** + * @generated from message gooseai.UpdateModelRequest + */ +export declare class UpdateModelRequest extends Message { + /** + * the id of the model + * + * @generated from field: string id = 1; + */ + id: string; + + /** + * a readable model name + * + * @generated from field: optional string name = 2; + */ + name?: string; + + /** + * the mode of the model + * + * @generated from field: optional gooseai.FineTuningMode mode = 3; + */ + mode?: FineTuningMode; + + /** + * freeform text description of object, should only be set when mode is OBJECT + * + * @generated from field: optional string object_prompt = 4; + */ + objectPrompt?: string; + + /** + * the engineId of an fine-tuneable Stability model + * + * @generated from field: optional string engine_id = 5; + */ + engineId?: string; + + constructor(data?: PartialMessage); + + static readonly runtime: typeof proto3; + static readonly typeName = "gooseai.UpdateModelRequest"; + static readonly fields: FieldList; + + static fromBinary(bytes: Uint8Array, options?: Partial): UpdateModelRequest; + + static fromJson(jsonValue: JsonValue, options?: Partial): UpdateModelRequest; + + static fromJsonString(jsonString: string, options?: Partial): UpdateModelRequest; + + static equals(a: UpdateModelRequest | PlainMessage | undefined, b: UpdateModelRequest | PlainMessage | undefined): boolean; +} + +/** + * @generated from message gooseai.UpdateModelResponse + */ +export declare class UpdateModelResponse extends Message { + /** + * @generated from field: gooseai.FineTuningModel model = 1; + */ + model?: FineTuningModel; + + constructor(data?: PartialMessage); + + static readonly runtime: typeof proto3; + static readonly typeName = "gooseai.UpdateModelResponse"; + static readonly fields: FieldList; + + static fromBinary(bytes: Uint8Array, options?: Partial): UpdateModelResponse; + + static fromJson(jsonValue: JsonValue, options?: Partial): UpdateModelResponse; + + static fromJsonString(jsonString: string, options?: Partial): UpdateModelResponse; + + static equals(a: UpdateModelResponse | PlainMessage | undefined, b: UpdateModelResponse | PlainMessage | undefined): boolean; +} + +/** + * @generated from message gooseai.DeleteModelRequest + */ +export declare class DeleteModelRequest extends Message { + /** + * ID of the model to delete + * + * @generated from field: string id = 1; + */ + id: string; + + constructor(data?: PartialMessage); + + static readonly runtime: typeof proto3; + static readonly typeName = "gooseai.DeleteModelRequest"; + static readonly fields: FieldList; + + static fromBinary(bytes: Uint8Array, options?: Partial): DeleteModelRequest; + + static fromJson(jsonValue: JsonValue, options?: Partial): DeleteModelRequest; + + static fromJsonString(jsonString: string, options?: Partial): DeleteModelRequest; + + static equals(a: DeleteModelRequest | PlainMessage | undefined, b: DeleteModelRequest | PlainMessage | undefined): boolean; +} + +/** + * @generated from message gooseai.DeleteModelResponse + */ +export declare class DeleteModelResponse extends Message { + /** + * @generated from field: gooseai.FineTuningModel model = 1; + */ + model?: FineTuningModel; + + constructor(data?: PartialMessage); + + static readonly runtime: typeof proto3; + static readonly typeName = "gooseai.DeleteModelResponse"; + static readonly fields: FieldList; + + static fromBinary(bytes: Uint8Array, options?: Partial): DeleteModelResponse; + + static fromJson(jsonValue: JsonValue, options?: Partial): DeleteModelResponse; + + static fromJsonString(jsonString: string, options?: Partial): DeleteModelResponse; + + static equals(a: DeleteModelResponse | PlainMessage | undefined, b: DeleteModelResponse | PlainMessage | undefined): boolean; +} + +/** + * @generated from message gooseai.ResubmitModelRequest + */ +export declare class ResubmitModelRequest extends Message { + /** + * ID of the model to resubmit + * + * @generated from field: string id = 1; + */ + id: string; + + constructor(data?: PartialMessage); + + static readonly runtime: typeof proto3; + static readonly typeName = "gooseai.ResubmitModelRequest"; + static readonly fields: FieldList; + + static fromBinary(bytes: Uint8Array, options?: Partial): ResubmitModelRequest; + + static fromJson(jsonValue: JsonValue, options?: Partial): ResubmitModelRequest; + + static fromJsonString(jsonString: string, options?: Partial): ResubmitModelRequest; + + static equals(a: ResubmitModelRequest | PlainMessage | undefined, b: ResubmitModelRequest | PlainMessage | undefined): boolean; +} + +/** + * @generated from message gooseai.ResubmitModelResponse + */ +export declare class ResubmitModelResponse extends Message { + /** + * @generated from field: gooseai.FineTuningModel model = 1; + */ + model?: FineTuningModel; + + constructor(data?: PartialMessage); + + static readonly runtime: typeof proto3; + static readonly typeName = "gooseai.ResubmitModelResponse"; + static readonly fields: FieldList; + + static fromBinary(bytes: Uint8Array, options?: Partial): ResubmitModelResponse; + + static fromJson(jsonValue: JsonValue, options?: Partial): ResubmitModelResponse; + + static fromJsonString(jsonString: string, options?: Partial): ResubmitModelResponse; + + static equals(a: ResubmitModelResponse | PlainMessage | undefined, b: ResubmitModelResponse | PlainMessage | undefined): boolean; +} + +/** + * @generated from message gooseai.ListModelsRequest + */ +export declare class ListModelsRequest extends Message { + /** + * @generated from oneof gooseai.ListModelsRequest.id + */ + id: { + /** + * the organization's ID + * + * @generated from field: string org_id = 1; + */ + value: string; + case: "orgId"; + } | { + /** + * or the user's ID + * + * @generated from field: string user_id = 2; + */ + value: string; + case: "userId"; + } | { case: undefined; value?: undefined }; + + constructor(data?: PartialMessage); + + static readonly runtime: typeof proto3; + static readonly typeName = "gooseai.ListModelsRequest"; + static readonly fields: FieldList; + + static fromBinary(bytes: Uint8Array, options?: Partial): ListModelsRequest; + + static fromJson(jsonValue: JsonValue, options?: Partial): ListModelsRequest; + + static fromJsonString(jsonString: string, options?: Partial): ListModelsRequest; + + static equals(a: ListModelsRequest | PlainMessage | undefined, b: ListModelsRequest | PlainMessage | undefined): boolean; +} + +/** + * @generated from message gooseai.ListModelsResponse + */ +export declare class ListModelsResponse extends Message { + /** + * the list of models + * + * @generated from field: repeated gooseai.FineTuningModel models = 1; + */ + models: FineTuningModel[]; + + constructor(data?: PartialMessage); + + static readonly runtime: typeof proto3; + static readonly typeName = "gooseai.ListModelsResponse"; + static readonly fields: FieldList; + + static fromBinary(bytes: Uint8Array, options?: Partial): ListModelsResponse; + + static fromJson(jsonValue: JsonValue, options?: Partial): ListModelsResponse; + + static fromJsonString(jsonString: string, options?: Partial): ListModelsResponse; + + static equals(a: ListModelsResponse | PlainMessage | undefined, b: ListModelsResponse | PlainMessage | undefined): boolean; +} + diff --git a/src/stability_api/platform/finetuning/finetuning_pb.js b/src/stability_api/platform/finetuning/finetuning_pb.js new file mode 100644 index 0000000..9ce129f --- /dev/null +++ b/src/stability_api/platform/finetuning/finetuning_pb.js @@ -0,0 +1,183 @@ +// @generated by protoc-gen-es v1.3.0 +// @generated from file stability_api/platform/finetuning/finetuning.proto (package gooseai, syntax proto3) +/* eslint-disable */ +// @ts-nocheck + +import { proto3, Struct } from "@bufbuild/protobuf"; + +/** + * @generated from enum gooseai.FineTuningMode + */ +export const FineTuningMode = proto3.makeEnum( + "gooseai.FineTuningMode", + [ + {no: 0, name: "FINE_TUNING_MODE_UNSPECIFIED", localName: "UNSPECIFIED"}, + {no: 1, name: "FINE_TUNING_MODE_FACE", localName: "FACE"}, + {no: 2, name: "FINE_TUNING_MODE_STYLE", localName: "STYLE"}, + {no: 3, name: "FINE_TUNING_MODE_OBJECT", localName: "OBJECT"}, + ], +); + +/** + * @generated from enum gooseai.FineTuningStatus + */ +export const FineTuningStatus = proto3.makeEnum( + "gooseai.FineTuningStatus", + [ + {no: 0, name: "FINE_TUNING_STATUS_NOT_STARTED", localName: "NOT_STARTED"}, + {no: 1, name: "FINE_TUNING_STATUS_RUNNING", localName: "RUNNING"}, + {no: 2, name: "FINE_TUNING_STATUS_COMPLETED", localName: "COMPLETED"}, + {no: 3, name: "FINE_TUNING_STATUS_FAILED", localName: "FAILED"}, + {no: 4, name: "FINE_TUNING_STATUS_SUBMITTED", localName: "SUBMITTED"}, + ], +); + +/** + * @generated from message gooseai.FineTuningModel + */ +export const FineTuningModel = proto3.makeMessageType( + "gooseai.FineTuningModel", + () => [ + { no: 1, name: "id", kind: "scalar", T: 9 /* ScalarType.STRING */ }, + { no: 2, name: "user_id", kind: "scalar", T: 9 /* ScalarType.STRING */ }, + { no: 3, name: "name", kind: "scalar", T: 9 /* ScalarType.STRING */ }, + { no: 4, name: "mode", kind: "enum", T: proto3.getEnumType(FineTuningMode), opt: true }, + { no: 5, name: "object_prompt", kind: "scalar", T: 9 /* ScalarType.STRING */, opt: true }, + { no: 6, name: "project_id", kind: "scalar", T: 9 /* ScalarType.STRING */ }, + { no: 7, name: "duration", kind: "scalar", T: 1 /* ScalarType.DOUBLE */ }, + { no: 8, name: "status", kind: "enum", T: proto3.getEnumType(FineTuningStatus) }, + { no: 9, name: "engine_id", kind: "scalar", T: 9 /* ScalarType.STRING */ }, + { no: 10, name: "failure_reason", kind: "scalar", T: 9 /* ScalarType.STRING */, opt: true }, + ], +); + +/** + * @generated from message gooseai.CreateModelRequest + */ +export const CreateModelRequest = proto3.makeMessageType( + "gooseai.CreateModelRequest", + () => [ + { no: 1, name: "name", kind: "scalar", T: 9 /* ScalarType.STRING */ }, + { no: 2, name: "mode", kind: "enum", T: proto3.getEnumType(FineTuningMode), opt: true }, + { no: 3, name: "object_prompt", kind: "scalar", T: 9 /* ScalarType.STRING */, opt: true }, + { no: 4, name: "project_id", kind: "scalar", T: 9 /* ScalarType.STRING */ }, + { no: 5, name: "engine_id", kind: "scalar", T: 9 /* ScalarType.STRING */ }, + { no: 2047, name: "extras", kind: "message", T: Struct, opt: true }, + ], +); + +/** + * @generated from message gooseai.CreateModelResponse + */ +export const CreateModelResponse = proto3.makeMessageType( + "gooseai.CreateModelResponse", + () => [ + { no: 1, name: "model", kind: "message", T: FineTuningModel }, + ], +); + +/** + * @generated from message gooseai.GetModelRequest + */ +export const GetModelRequest = proto3.makeMessageType( + "gooseai.GetModelRequest", + () => [ + { no: 1, name: "id", kind: "scalar", T: 9 /* ScalarType.STRING */ }, + ], +); + +/** + * @generated from message gooseai.GetModelResponse + */ +export const GetModelResponse = proto3.makeMessageType( + "gooseai.GetModelResponse", + () => [ + { no: 1, name: "model", kind: "message", T: FineTuningModel }, + ], +); + +/** + * @generated from message gooseai.UpdateModelRequest + */ +export const UpdateModelRequest = proto3.makeMessageType( + "gooseai.UpdateModelRequest", + () => [ + { no: 1, name: "id", kind: "scalar", T: 9 /* ScalarType.STRING */ }, + { no: 2, name: "name", kind: "scalar", T: 9 /* ScalarType.STRING */, opt: true }, + { no: 3, name: "mode", kind: "enum", T: proto3.getEnumType(FineTuningMode), opt: true }, + { no: 4, name: "object_prompt", kind: "scalar", T: 9 /* ScalarType.STRING */, opt: true }, + { no: 5, name: "engine_id", kind: "scalar", T: 9 /* ScalarType.STRING */, opt: true }, + ], +); + +/** + * @generated from message gooseai.UpdateModelResponse + */ +export const UpdateModelResponse = proto3.makeMessageType( + "gooseai.UpdateModelResponse", + () => [ + { no: 1, name: "model", kind: "message", T: FineTuningModel }, + ], +); + +/** + * @generated from message gooseai.DeleteModelRequest + */ +export const DeleteModelRequest = proto3.makeMessageType( + "gooseai.DeleteModelRequest", + () => [ + { no: 1, name: "id", kind: "scalar", T: 9 /* ScalarType.STRING */ }, + ], +); + +/** + * @generated from message gooseai.DeleteModelResponse + */ +export const DeleteModelResponse = proto3.makeMessageType( + "gooseai.DeleteModelResponse", + () => [ + { no: 1, name: "model", kind: "message", T: FineTuningModel }, + ], +); + +/** + * @generated from message gooseai.ResubmitModelRequest + */ +export const ResubmitModelRequest = proto3.makeMessageType( + "gooseai.ResubmitModelRequest", + () => [ + { no: 1, name: "id", kind: "scalar", T: 9 /* ScalarType.STRING */ }, + ], +); + +/** + * @generated from message gooseai.ResubmitModelResponse + */ +export const ResubmitModelResponse = proto3.makeMessageType( + "gooseai.ResubmitModelResponse", + () => [ + { no: 1, name: "model", kind: "message", T: FineTuningModel }, + ], +); + +/** + * @generated from message gooseai.ListModelsRequest + */ +export const ListModelsRequest = proto3.makeMessageType( + "gooseai.ListModelsRequest", + () => [ + { no: 1, name: "org_id", kind: "scalar", T: 9 /* ScalarType.STRING */, oneof: "id" }, + { no: 2, name: "user_id", kind: "scalar", T: 9 /* ScalarType.STRING */, oneof: "id" }, + ], +); + +/** + * @generated from message gooseai.ListModelsResponse + */ +export const ListModelsResponse = proto3.makeMessageType( + "gooseai.ListModelsResponse", + () => [ + { no: 1, name: "models", kind: "message", T: FineTuningModel, repeated: true }, + ], +); + diff --git a/src/stability_api/platform/finetuning/finetuning_pb2.py b/src/stability_api/platform/finetuning/finetuning_pb2.py new file mode 100644 index 0000000..b4f8650 --- /dev/null +++ b/src/stability_api/platform/finetuning/finetuning_pb2.py @@ -0,0 +1,58 @@ +# -*- coding: utf-8 -*- +# Generated by the protocol buffer compiler. DO NOT EDIT! +# source: stability_api/platform/finetuning/finetuning.proto +"""Generated protocol buffer code.""" +from google.protobuf import descriptor as _descriptor +from google.protobuf import descriptor_pool as _descriptor_pool +from google.protobuf import symbol_database as _symbol_database +from google.protobuf.internal import builder as _builder +# @@protoc_insertion_point(imports) + +_sym_db = _symbol_database.Default() + + +from google.protobuf import struct_pb2 as google_dot_protobuf_dot_struct__pb2 + + +DESCRIPTOR = _descriptor_pool.Default().AddSerializedFile(b'\n2stability_api/platform/finetuning/finetuning.proto\x12\x07gooseai\x1a\x1cgoogle/protobuf/struct.proto\"\x8f\x03\n\x0f\x46ineTuningModel\x12\x0e\n\x02id\x18\x01 \x01(\tR\x02id\x12\x17\n\x07user_id\x18\x02 \x01(\tR\x06userId\x12\x12\n\x04name\x18\x03 \x01(\tR\x04name\x12\x30\n\x04mode\x18\x04 \x01(\x0e\x32\x17.gooseai.FineTuningModeH\x00R\x04mode\x88\x01\x01\x12(\n\robject_prompt\x18\x05 \x01(\tH\x01R\x0cobjectPrompt\x88\x01\x01\x12\x1d\n\nproject_id\x18\x06 \x01(\tR\tprojectId\x12\x1a\n\x08\x64uration\x18\x07 \x01(\x01R\x08\x64uration\x12\x31\n\x06status\x18\x08 \x01(\x0e\x32\x19.gooseai.FineTuningStatusR\x06status\x12\x1b\n\tengine_id\x18\t \x01(\tR\x08\x65ngineId\x12*\n\x0e\x66\x61ilure_reason\x18\n \x01(\tH\x02R\rfailureReason\x88\x01\x01\x42\x07\n\x05_modeB\x10\n\x0e_object_promptB\x11\n\x0f_failure_reason\"\x9d\x02\n\x12\x43reateModelRequest\x12\x12\n\x04name\x18\x01 \x01(\tR\x04name\x12\x30\n\x04mode\x18\x02 \x01(\x0e\x32\x17.gooseai.FineTuningModeH\x00R\x04mode\x88\x01\x01\x12(\n\robject_prompt\x18\x03 \x01(\tH\x01R\x0cobjectPrompt\x88\x01\x01\x12\x1d\n\nproject_id\x18\x04 \x01(\tR\tprojectId\x12\x1b\n\tengine_id\x18\x05 \x01(\tR\x08\x65ngineId\x12\x35\n\x06\x65xtras\x18\xff\x0f \x01(\x0b\x32\x17.google.protobuf.StructH\x02R\x06\x65xtras\x88\x01\x01\x42\x07\n\x05_modeB\x10\n\x0e_object_promptB\t\n\x07_extras\"E\n\x13\x43reateModelResponse\x12.\n\x05model\x18\x01 \x01(\x0b\x32\x18.gooseai.FineTuningModelR\x05model\"!\n\x0fGetModelRequest\x12\x0e\n\x02id\x18\x01 \x01(\tR\x02id\"B\n\x10GetModelResponse\x12.\n\x05model\x18\x01 \x01(\x0b\x32\x18.gooseai.FineTuningModelR\x05model\"\xed\x01\n\x12UpdateModelRequest\x12\x0e\n\x02id\x18\x01 \x01(\tR\x02id\x12\x17\n\x04name\x18\x02 \x01(\tH\x00R\x04name\x88\x01\x01\x12\x30\n\x04mode\x18\x03 \x01(\x0e\x32\x17.gooseai.FineTuningModeH\x01R\x04mode\x88\x01\x01\x12(\n\robject_prompt\x18\x04 \x01(\tH\x02R\x0cobjectPrompt\x88\x01\x01\x12 \n\tengine_id\x18\x05 \x01(\tH\x03R\x08\x65ngineId\x88\x01\x01\x42\x07\n\x05_nameB\x07\n\x05_modeB\x10\n\x0e_object_promptB\x0c\n\n_engine_id\"E\n\x13UpdateModelResponse\x12.\n\x05model\x18\x01 \x01(\x0b\x32\x18.gooseai.FineTuningModelR\x05model\"$\n\x12\x44\x65leteModelRequest\x12\x0e\n\x02id\x18\x01 \x01(\tR\x02id\"E\n\x13\x44\x65leteModelResponse\x12.\n\x05model\x18\x01 \x01(\x0b\x32\x18.gooseai.FineTuningModelR\x05model\"&\n\x14ResubmitModelRequest\x12\x0e\n\x02id\x18\x01 \x01(\tR\x02id\"G\n\x15ResubmitModelResponse\x12.\n\x05model\x18\x01 \x01(\x0b\x32\x18.gooseai.FineTuningModelR\x05model\"M\n\x11ListModelsRequest\x12\x17\n\x06org_id\x18\x01 \x01(\tH\x00R\x05orgId\x12\x19\n\x07user_id\x18\x02 \x01(\tH\x00R\x06userIdB\x04\n\x02id\"F\n\x12ListModelsResponse\x12\x30\n\x06models\x18\x01 \x03(\x0b\x32\x18.gooseai.FineTuningModelR\x06models*\x86\x01\n\x0e\x46ineTuningMode\x12 \n\x1c\x46INE_TUNING_MODE_UNSPECIFIED\x10\x00\x12\x19\n\x15\x46INE_TUNING_MODE_FACE\x10\x01\x12\x1a\n\x16\x46INE_TUNING_MODE_STYLE\x10\x02\x12\x1b\n\x17\x46INE_TUNING_MODE_OBJECT\x10\x03*\xb9\x01\n\x10\x46ineTuningStatus\x12\"\n\x1e\x46INE_TUNING_STATUS_NOT_STARTED\x10\x00\x12\x1e\n\x1a\x46INE_TUNING_STATUS_RUNNING\x10\x01\x12 \n\x1c\x46INE_TUNING_STATUS_COMPLETED\x10\x02\x12\x1d\n\x19\x46INE_TUNING_STATUS_FAILED\x10\x03\x12 \n\x1c\x46INE_TUNING_STATUS_SUBMITTED\x10\x04\x32\xc9\x03\n\x11\x46ineTuningService\x12H\n\x0b\x43reateModel\x12\x1b.gooseai.CreateModelRequest\x1a\x1c.gooseai.CreateModelResponse\x12?\n\x08GetModel\x12\x18.gooseai.GetModelRequest\x1a\x19.gooseai.GetModelResponse\x12H\n\x0bUpdateModel\x12\x1b.gooseai.UpdateModelRequest\x1a\x1c.gooseai.UpdateModelResponse\x12H\n\x0b\x44\x65leteModel\x12\x1b.gooseai.DeleteModelRequest\x1a\x1c.gooseai.DeleteModelResponse\x12N\n\rResubmitModel\x12\x1d.gooseai.ResubmitModelRequest\x1a\x1e.gooseai.ResubmitModelResponse\x12\x45\n\nListModels\x12\x1a.gooseai.ListModelsRequest\x1a\x1b.gooseai.ListModelsResponseB\x95\x01\n\x0b\x63om.gooseaiB\x0f\x46inetuningProtoP\x01Z9github.com/stability-ai/api-interfaces/gooseai/finetuning\xa2\x02\x03GXX\xaa\x02\x07Gooseai\xca\x02\x07Gooseai\xe2\x02\x13Gooseai\\GPBMetadata\xea\x02\x07Gooseaib\x06proto3') + +_globals = globals() +_builder.BuildMessageAndEnumDescriptors(DESCRIPTOR, _globals) +_builder.BuildTopDescriptorsAndMessages(DESCRIPTOR, 'stability_api.platform.finetuning.finetuning_pb2', _globals) +if _descriptor._USE_C_DESCRIPTORS == False: + + DESCRIPTOR._options = None + DESCRIPTOR._serialized_options = b'\n\013com.gooseaiB\017FinetuningProtoP\001Z9github.com/stability-ai/api-interfaces/gooseai/finetuning\242\002\003GXX\252\002\007Gooseai\312\002\007Gooseai\342\002\023Gooseai\\GPBMetadata\352\002\007Gooseai' + _globals['_FINETUNINGMODE']._serialized_start=1642 + _globals['_FINETUNINGMODE']._serialized_end=1776 + _globals['_FINETUNINGSTATUS']._serialized_start=1779 + _globals['_FINETUNINGSTATUS']._serialized_end=1964 + _globals['_FINETUNINGMODEL']._serialized_start=94 + _globals['_FINETUNINGMODEL']._serialized_end=493 + _globals['_CREATEMODELREQUEST']._serialized_start=496 + _globals['_CREATEMODELREQUEST']._serialized_end=781 + _globals['_CREATEMODELRESPONSE']._serialized_start=783 + _globals['_CREATEMODELRESPONSE']._serialized_end=852 + _globals['_GETMODELREQUEST']._serialized_start=854 + _globals['_GETMODELREQUEST']._serialized_end=887 + _globals['_GETMODELRESPONSE']._serialized_start=889 + _globals['_GETMODELRESPONSE']._serialized_end=955 + _globals['_UPDATEMODELREQUEST']._serialized_start=958 + _globals['_UPDATEMODELREQUEST']._serialized_end=1195 + _globals['_UPDATEMODELRESPONSE']._serialized_start=1197 + _globals['_UPDATEMODELRESPONSE']._serialized_end=1266 + _globals['_DELETEMODELREQUEST']._serialized_start=1268 + _globals['_DELETEMODELREQUEST']._serialized_end=1304 + _globals['_DELETEMODELRESPONSE']._serialized_start=1306 + _globals['_DELETEMODELRESPONSE']._serialized_end=1375 + _globals['_RESUBMITMODELREQUEST']._serialized_start=1377 + _globals['_RESUBMITMODELREQUEST']._serialized_end=1415 + _globals['_RESUBMITMODELRESPONSE']._serialized_start=1417 + _globals['_RESUBMITMODELRESPONSE']._serialized_end=1488 + _globals['_LISTMODELSREQUEST']._serialized_start=1490 + _globals['_LISTMODELSREQUEST']._serialized_end=1567 + _globals['_LISTMODELSRESPONSE']._serialized_start=1569 + _globals['_LISTMODELSRESPONSE']._serialized_end=1639 + _globals['_FINETUNINGSERVICE']._serialized_start=1967 + _globals['_FINETUNINGSERVICE']._serialized_end=2424 +# @@protoc_insertion_point(module_scope) diff --git a/src/stability_api/platform/finetuning/finetuning_pb2.pyi b/src/stability_api/platform/finetuning/finetuning_pb2.pyi new file mode 100644 index 0000000..7dc3ddd --- /dev/null +++ b/src/stability_api/platform/finetuning/finetuning_pb2.pyi @@ -0,0 +1,148 @@ +from google.protobuf import struct_pb2 as _struct_pb2 +from google.protobuf.internal import containers as _containers +from google.protobuf.internal import enum_type_wrapper as _enum_type_wrapper +from google.protobuf import descriptor as _descriptor +from google.protobuf import message as _message +from typing import ClassVar as _ClassVar, Iterable as _Iterable, Mapping as _Mapping, Optional as _Optional, Union as _Union + +DESCRIPTOR: _descriptor.FileDescriptor + +class FineTuningMode(int, metaclass=_enum_type_wrapper.EnumTypeWrapper): + __slots__ = [] + FINE_TUNING_MODE_UNSPECIFIED: _ClassVar[FineTuningMode] + FINE_TUNING_MODE_FACE: _ClassVar[FineTuningMode] + FINE_TUNING_MODE_STYLE: _ClassVar[FineTuningMode] + FINE_TUNING_MODE_OBJECT: _ClassVar[FineTuningMode] + +class FineTuningStatus(int, metaclass=_enum_type_wrapper.EnumTypeWrapper): + __slots__ = [] + FINE_TUNING_STATUS_NOT_STARTED: _ClassVar[FineTuningStatus] + FINE_TUNING_STATUS_RUNNING: _ClassVar[FineTuningStatus] + FINE_TUNING_STATUS_COMPLETED: _ClassVar[FineTuningStatus] + FINE_TUNING_STATUS_FAILED: _ClassVar[FineTuningStatus] + FINE_TUNING_STATUS_SUBMITTED: _ClassVar[FineTuningStatus] +FINE_TUNING_MODE_UNSPECIFIED: FineTuningMode +FINE_TUNING_MODE_FACE: FineTuningMode +FINE_TUNING_MODE_STYLE: FineTuningMode +FINE_TUNING_MODE_OBJECT: FineTuningMode +FINE_TUNING_STATUS_NOT_STARTED: FineTuningStatus +FINE_TUNING_STATUS_RUNNING: FineTuningStatus +FINE_TUNING_STATUS_COMPLETED: FineTuningStatus +FINE_TUNING_STATUS_FAILED: FineTuningStatus +FINE_TUNING_STATUS_SUBMITTED: FineTuningStatus + +class FineTuningModel(_message.Message): + __slots__ = ["id", "user_id", "name", "mode", "object_prompt", "project_id", "duration", "status", "engine_id", "failure_reason"] + ID_FIELD_NUMBER: _ClassVar[int] + USER_ID_FIELD_NUMBER: _ClassVar[int] + NAME_FIELD_NUMBER: _ClassVar[int] + MODE_FIELD_NUMBER: _ClassVar[int] + OBJECT_PROMPT_FIELD_NUMBER: _ClassVar[int] + PROJECT_ID_FIELD_NUMBER: _ClassVar[int] + DURATION_FIELD_NUMBER: _ClassVar[int] + STATUS_FIELD_NUMBER: _ClassVar[int] + ENGINE_ID_FIELD_NUMBER: _ClassVar[int] + FAILURE_REASON_FIELD_NUMBER: _ClassVar[int] + id: str + user_id: str + name: str + mode: FineTuningMode + object_prompt: str + project_id: str + duration: float + status: FineTuningStatus + engine_id: str + failure_reason: str + def __init__(self, id: _Optional[str] = ..., user_id: _Optional[str] = ..., name: _Optional[str] = ..., mode: _Optional[_Union[FineTuningMode, str]] = ..., object_prompt: _Optional[str] = ..., project_id: _Optional[str] = ..., duration: _Optional[float] = ..., status: _Optional[_Union[FineTuningStatus, str]] = ..., engine_id: _Optional[str] = ..., failure_reason: _Optional[str] = ...) -> None: ... + +class CreateModelRequest(_message.Message): + __slots__ = ["name", "mode", "object_prompt", "project_id", "engine_id", "extras"] + NAME_FIELD_NUMBER: _ClassVar[int] + MODE_FIELD_NUMBER: _ClassVar[int] + OBJECT_PROMPT_FIELD_NUMBER: _ClassVar[int] + PROJECT_ID_FIELD_NUMBER: _ClassVar[int] + ENGINE_ID_FIELD_NUMBER: _ClassVar[int] + EXTRAS_FIELD_NUMBER: _ClassVar[int] + name: str + mode: FineTuningMode + object_prompt: str + project_id: str + engine_id: str + extras: _struct_pb2.Struct + def __init__(self, name: _Optional[str] = ..., mode: _Optional[_Union[FineTuningMode, str]] = ..., object_prompt: _Optional[str] = ..., project_id: _Optional[str] = ..., engine_id: _Optional[str] = ..., extras: _Optional[_Union[_struct_pb2.Struct, _Mapping]] = ...) -> None: ... + +class CreateModelResponse(_message.Message): + __slots__ = ["model"] + MODEL_FIELD_NUMBER: _ClassVar[int] + model: FineTuningModel + def __init__(self, model: _Optional[_Union[FineTuningModel, _Mapping]] = ...) -> None: ... + +class GetModelRequest(_message.Message): + __slots__ = ["id"] + ID_FIELD_NUMBER: _ClassVar[int] + id: str + def __init__(self, id: _Optional[str] = ...) -> None: ... + +class GetModelResponse(_message.Message): + __slots__ = ["model"] + MODEL_FIELD_NUMBER: _ClassVar[int] + model: FineTuningModel + def __init__(self, model: _Optional[_Union[FineTuningModel, _Mapping]] = ...) -> None: ... + +class UpdateModelRequest(_message.Message): + __slots__ = ["id", "name", "mode", "object_prompt", "engine_id"] + ID_FIELD_NUMBER: _ClassVar[int] + NAME_FIELD_NUMBER: _ClassVar[int] + MODE_FIELD_NUMBER: _ClassVar[int] + OBJECT_PROMPT_FIELD_NUMBER: _ClassVar[int] + ENGINE_ID_FIELD_NUMBER: _ClassVar[int] + id: str + name: str + mode: FineTuningMode + object_prompt: str + engine_id: str + def __init__(self, id: _Optional[str] = ..., name: _Optional[str] = ..., mode: _Optional[_Union[FineTuningMode, str]] = ..., object_prompt: _Optional[str] = ..., engine_id: _Optional[str] = ...) -> None: ... + +class UpdateModelResponse(_message.Message): + __slots__ = ["model"] + MODEL_FIELD_NUMBER: _ClassVar[int] + model: FineTuningModel + def __init__(self, model: _Optional[_Union[FineTuningModel, _Mapping]] = ...) -> None: ... + +class DeleteModelRequest(_message.Message): + __slots__ = ["id"] + ID_FIELD_NUMBER: _ClassVar[int] + id: str + def __init__(self, id: _Optional[str] = ...) -> None: ... + +class DeleteModelResponse(_message.Message): + __slots__ = ["model"] + MODEL_FIELD_NUMBER: _ClassVar[int] + model: FineTuningModel + def __init__(self, model: _Optional[_Union[FineTuningModel, _Mapping]] = ...) -> None: ... + +class ResubmitModelRequest(_message.Message): + __slots__ = ["id"] + ID_FIELD_NUMBER: _ClassVar[int] + id: str + def __init__(self, id: _Optional[str] = ...) -> None: ... + +class ResubmitModelResponse(_message.Message): + __slots__ = ["model"] + MODEL_FIELD_NUMBER: _ClassVar[int] + model: FineTuningModel + def __init__(self, model: _Optional[_Union[FineTuningModel, _Mapping]] = ...) -> None: ... + +class ListModelsRequest(_message.Message): + __slots__ = ["org_id", "user_id"] + ORG_ID_FIELD_NUMBER: _ClassVar[int] + USER_ID_FIELD_NUMBER: _ClassVar[int] + org_id: str + user_id: str + def __init__(self, org_id: _Optional[str] = ..., user_id: _Optional[str] = ...) -> None: ... + +class ListModelsResponse(_message.Message): + __slots__ = ["models"] + MODELS_FIELD_NUMBER: _ClassVar[int] + models: _containers.RepeatedCompositeFieldContainer[FineTuningModel] + def __init__(self, models: _Optional[_Iterable[_Union[FineTuningModel, _Mapping]]] = ...) -> None: ... diff --git a/src/stability_api/platform/finetuning/finetuning_pb2_grpc.py b/src/stability_api/platform/finetuning/finetuning_pb2_grpc.py new file mode 100644 index 0000000..0f079d5 --- /dev/null +++ b/src/stability_api/platform/finetuning/finetuning_pb2_grpc.py @@ -0,0 +1,237 @@ +# Generated by the gRPC Python protocol compiler plugin. DO NOT EDIT! +"""Client and server classes corresponding to protobuf-defined services.""" +import grpc + +from stability_api.platform.finetuning import finetuning_pb2 as stability__api_dot_platform_dot_finetuning_dot_finetuning__pb2 + + +class FineTuningServiceStub(object): + """Missing associated documentation comment in .proto file.""" + + def __init__(self, channel): + """Constructor. + + Args: + channel: A grpc.Channel. + """ + self.CreateModel = channel.unary_unary( + '/gooseai.FineTuningService/CreateModel', + request_serializer=stability__api_dot_platform_dot_finetuning_dot_finetuning__pb2.CreateModelRequest.SerializeToString, + response_deserializer=stability__api_dot_platform_dot_finetuning_dot_finetuning__pb2.CreateModelResponse.FromString, + ) + self.GetModel = channel.unary_unary( + '/gooseai.FineTuningService/GetModel', + request_serializer=stability__api_dot_platform_dot_finetuning_dot_finetuning__pb2.GetModelRequest.SerializeToString, + response_deserializer=stability__api_dot_platform_dot_finetuning_dot_finetuning__pb2.GetModelResponse.FromString, + ) + self.UpdateModel = channel.unary_unary( + '/gooseai.FineTuningService/UpdateModel', + request_serializer=stability__api_dot_platform_dot_finetuning_dot_finetuning__pb2.UpdateModelRequest.SerializeToString, + response_deserializer=stability__api_dot_platform_dot_finetuning_dot_finetuning__pb2.UpdateModelResponse.FromString, + ) + self.DeleteModel = channel.unary_unary( + '/gooseai.FineTuningService/DeleteModel', + request_serializer=stability__api_dot_platform_dot_finetuning_dot_finetuning__pb2.DeleteModelRequest.SerializeToString, + response_deserializer=stability__api_dot_platform_dot_finetuning_dot_finetuning__pb2.DeleteModelResponse.FromString, + ) + self.ResubmitModel = channel.unary_unary( + '/gooseai.FineTuningService/ResubmitModel', + request_serializer=stability__api_dot_platform_dot_finetuning_dot_finetuning__pb2.ResubmitModelRequest.SerializeToString, + response_deserializer=stability__api_dot_platform_dot_finetuning_dot_finetuning__pb2.ResubmitModelResponse.FromString, + ) + self.ListModels = channel.unary_unary( + '/gooseai.FineTuningService/ListModels', + request_serializer=stability__api_dot_platform_dot_finetuning_dot_finetuning__pb2.ListModelsRequest.SerializeToString, + response_deserializer=stability__api_dot_platform_dot_finetuning_dot_finetuning__pb2.ListModelsResponse.FromString, + ) + + +class FineTuningServiceServicer(object): + """Missing associated documentation comment in .proto file.""" + + def CreateModel(self, request, context): + """Create a new model and begin the fine tuning process + """ + context.set_code(grpc.StatusCode.UNIMPLEMENTED) + context.set_details('Method not implemented!') + raise NotImplementedError('Method not implemented!') + + def GetModel(self, request, context): + """Get a FineTuningModel + """ + context.set_code(grpc.StatusCode.UNIMPLEMENTED) + context.set_details('Method not implemented!') + raise NotImplementedError('Method not implemented!') + + def UpdateModel(self, request, context): + """Update a FineTuningModel by id + """ + context.set_code(grpc.StatusCode.UNIMPLEMENTED) + context.set_details('Method not implemented!') + raise NotImplementedError('Method not implemented!') + + def DeleteModel(self, request, context): + """Delete a fine tuned model + """ + context.set_code(grpc.StatusCode.UNIMPLEMENTED) + context.set_details('Method not implemented!') + raise NotImplementedError('Method not implemented!') + + def ResubmitModel(self, request, context): + """Re-run training, does not create a new model + """ + context.set_code(grpc.StatusCode.UNIMPLEMENTED) + context.set_details('Method not implemented!') + raise NotImplementedError('Method not implemented!') + + def ListModels(self, request, context): + """List all the fine tuned models for an organization or user + """ + context.set_code(grpc.StatusCode.UNIMPLEMENTED) + context.set_details('Method not implemented!') + raise NotImplementedError('Method not implemented!') + + +def add_FineTuningServiceServicer_to_server(servicer, server): + rpc_method_handlers = { + 'CreateModel': grpc.unary_unary_rpc_method_handler( + servicer.CreateModel, + request_deserializer=stability__api_dot_platform_dot_finetuning_dot_finetuning__pb2.CreateModelRequest.FromString, + response_serializer=stability__api_dot_platform_dot_finetuning_dot_finetuning__pb2.CreateModelResponse.SerializeToString, + ), + 'GetModel': grpc.unary_unary_rpc_method_handler( + servicer.GetModel, + request_deserializer=stability__api_dot_platform_dot_finetuning_dot_finetuning__pb2.GetModelRequest.FromString, + response_serializer=stability__api_dot_platform_dot_finetuning_dot_finetuning__pb2.GetModelResponse.SerializeToString, + ), + 'UpdateModel': grpc.unary_unary_rpc_method_handler( + servicer.UpdateModel, + request_deserializer=stability__api_dot_platform_dot_finetuning_dot_finetuning__pb2.UpdateModelRequest.FromString, + response_serializer=stability__api_dot_platform_dot_finetuning_dot_finetuning__pb2.UpdateModelResponse.SerializeToString, + ), + 'DeleteModel': grpc.unary_unary_rpc_method_handler( + servicer.DeleteModel, + request_deserializer=stability__api_dot_platform_dot_finetuning_dot_finetuning__pb2.DeleteModelRequest.FromString, + response_serializer=stability__api_dot_platform_dot_finetuning_dot_finetuning__pb2.DeleteModelResponse.SerializeToString, + ), + 'ResubmitModel': grpc.unary_unary_rpc_method_handler( + servicer.ResubmitModel, + request_deserializer=stability__api_dot_platform_dot_finetuning_dot_finetuning__pb2.ResubmitModelRequest.FromString, + response_serializer=stability__api_dot_platform_dot_finetuning_dot_finetuning__pb2.ResubmitModelResponse.SerializeToString, + ), + 'ListModels': grpc.unary_unary_rpc_method_handler( + servicer.ListModels, + request_deserializer=stability__api_dot_platform_dot_finetuning_dot_finetuning__pb2.ListModelsRequest.FromString, + response_serializer=stability__api_dot_platform_dot_finetuning_dot_finetuning__pb2.ListModelsResponse.SerializeToString, + ), + } + generic_handler = grpc.method_handlers_generic_handler( + 'gooseai.FineTuningService', rpc_method_handlers) + server.add_generic_rpc_handlers((generic_handler,)) + + + # This class is part of an EXPERIMENTAL API. +class FineTuningService(object): + """Missing associated documentation comment in .proto file.""" + + @staticmethod + def CreateModel(request, + target, + options=(), + channel_credentials=None, + call_credentials=None, + insecure=False, + compression=None, + wait_for_ready=None, + timeout=None, + metadata=None): + return grpc.experimental.unary_unary(request, target, '/gooseai.FineTuningService/CreateModel', + stability__api_dot_platform_dot_finetuning_dot_finetuning__pb2.CreateModelRequest.SerializeToString, + stability__api_dot_platform_dot_finetuning_dot_finetuning__pb2.CreateModelResponse.FromString, + options, channel_credentials, + insecure, call_credentials, compression, wait_for_ready, timeout, metadata) + + @staticmethod + def GetModel(request, + target, + options=(), + channel_credentials=None, + call_credentials=None, + insecure=False, + compression=None, + wait_for_ready=None, + timeout=None, + metadata=None): + return grpc.experimental.unary_unary(request, target, '/gooseai.FineTuningService/GetModel', + stability__api_dot_platform_dot_finetuning_dot_finetuning__pb2.GetModelRequest.SerializeToString, + stability__api_dot_platform_dot_finetuning_dot_finetuning__pb2.GetModelResponse.FromString, + options, channel_credentials, + insecure, call_credentials, compression, wait_for_ready, timeout, metadata) + + @staticmethod + def UpdateModel(request, + target, + options=(), + channel_credentials=None, + call_credentials=None, + insecure=False, + compression=None, + wait_for_ready=None, + timeout=None, + metadata=None): + return grpc.experimental.unary_unary(request, target, '/gooseai.FineTuningService/UpdateModel', + stability__api_dot_platform_dot_finetuning_dot_finetuning__pb2.UpdateModelRequest.SerializeToString, + stability__api_dot_platform_dot_finetuning_dot_finetuning__pb2.UpdateModelResponse.FromString, + options, channel_credentials, + insecure, call_credentials, compression, wait_for_ready, timeout, metadata) + + @staticmethod + def DeleteModel(request, + target, + options=(), + channel_credentials=None, + call_credentials=None, + insecure=False, + compression=None, + wait_for_ready=None, + timeout=None, + metadata=None): + return grpc.experimental.unary_unary(request, target, '/gooseai.FineTuningService/DeleteModel', + stability__api_dot_platform_dot_finetuning_dot_finetuning__pb2.DeleteModelRequest.SerializeToString, + stability__api_dot_platform_dot_finetuning_dot_finetuning__pb2.DeleteModelResponse.FromString, + options, channel_credentials, + insecure, call_credentials, compression, wait_for_ready, timeout, metadata) + + @staticmethod + def ResubmitModel(request, + target, + options=(), + channel_credentials=None, + call_credentials=None, + insecure=False, + compression=None, + wait_for_ready=None, + timeout=None, + metadata=None): + return grpc.experimental.unary_unary(request, target, '/gooseai.FineTuningService/ResubmitModel', + stability__api_dot_platform_dot_finetuning_dot_finetuning__pb2.ResubmitModelRequest.SerializeToString, + stability__api_dot_platform_dot_finetuning_dot_finetuning__pb2.ResubmitModelResponse.FromString, + options, channel_credentials, + insecure, call_credentials, compression, wait_for_ready, timeout, metadata) + + @staticmethod + def ListModels(request, + target, + options=(), + channel_credentials=None, + call_credentials=None, + insecure=False, + compression=None, + wait_for_ready=None, + timeout=None, + metadata=None): + return grpc.experimental.unary_unary(request, target, '/gooseai.FineTuningService/ListModels', + stability__api_dot_platform_dot_finetuning_dot_finetuning__pb2.ListModelsRequest.SerializeToString, + stability__api_dot_platform_dot_finetuning_dot_finetuning__pb2.ListModelsResponse.FromString, + options, channel_credentials, + insecure, call_credentials, compression, wait_for_ready, timeout, metadata) diff --git a/src/stability_api/platform/finetuning/finetuningconnect/finetuning.connect.go b/src/stability_api/platform/finetuning/finetuningconnect/finetuning.connect.go new file mode 100644 index 0000000..f435626 --- /dev/null +++ b/src/stability_api/platform/finetuning/finetuningconnect/finetuning.connect.go @@ -0,0 +1,252 @@ +// Code generated by protoc-gen-connect-go. DO NOT EDIT. +// +// Source: stability_api/platform/finetuning/finetuning.proto + +package finetuningconnect + +import ( + connect "connectrpc.com/connect" + context "context" + errors "errors" + finetuning "github.com/stability-ai/api-interfaces/src/stability_api/platform/finetuning" + http "net/http" + strings "strings" +) + +// This is a compile-time assertion to ensure that this generated file and the connect package are +// compatible. If you get a compiler error that this constant is not defined, this code was +// generated with a version of connect newer than the one compiled into your binary. You can fix the +// problem by either regenerating this code with an older version of connect or updating the connect +// version compiled into your binary. +const _ = connect.IsAtLeastVersion0_1_0 + +const ( + // FineTuningServiceName is the fully-qualified name of the FineTuningService service. + FineTuningServiceName = "gooseai.FineTuningService" +) + +// These constants are the fully-qualified names of the RPCs defined in this package. They're +// exposed at runtime as Spec.Procedure and as the final two segments of the HTTP route. +// +// Note that these are different from the fully-qualified method names used by +// google.golang.org/protobuf/reflect/protoreflect. To convert from these constants to +// reflection-formatted method names, remove the leading slash and convert the remaining slash to a +// period. +const ( + // FineTuningServiceCreateModelProcedure is the fully-qualified name of the FineTuningService's + // CreateModel RPC. + FineTuningServiceCreateModelProcedure = "/gooseai.FineTuningService/CreateModel" + // FineTuningServiceGetModelProcedure is the fully-qualified name of the FineTuningService's + // GetModel RPC. + FineTuningServiceGetModelProcedure = "/gooseai.FineTuningService/GetModel" + // FineTuningServiceUpdateModelProcedure is the fully-qualified name of the FineTuningService's + // UpdateModel RPC. + FineTuningServiceUpdateModelProcedure = "/gooseai.FineTuningService/UpdateModel" + // FineTuningServiceDeleteModelProcedure is the fully-qualified name of the FineTuningService's + // DeleteModel RPC. + FineTuningServiceDeleteModelProcedure = "/gooseai.FineTuningService/DeleteModel" + // FineTuningServiceResubmitModelProcedure is the fully-qualified name of the FineTuningService's + // ResubmitModel RPC. + FineTuningServiceResubmitModelProcedure = "/gooseai.FineTuningService/ResubmitModel" + // FineTuningServiceListModelsProcedure is the fully-qualified name of the FineTuningService's + // ListModels RPC. + FineTuningServiceListModelsProcedure = "/gooseai.FineTuningService/ListModels" +) + +// FineTuningServiceClient is a client for the gooseai.FineTuningService service. +type FineTuningServiceClient interface { + // Create a new model and begin the fine tuning process + CreateModel(context.Context, *connect.Request[finetuning.CreateModelRequest]) (*connect.Response[finetuning.CreateModelResponse], error) + // Get a FineTuningModel + GetModel(context.Context, *connect.Request[finetuning.GetModelRequest]) (*connect.Response[finetuning.GetModelResponse], error) + // Update a FineTuningModel by id + UpdateModel(context.Context, *connect.Request[finetuning.UpdateModelRequest]) (*connect.Response[finetuning.UpdateModelResponse], error) + // Delete a fine tuned model + DeleteModel(context.Context, *connect.Request[finetuning.DeleteModelRequest]) (*connect.Response[finetuning.DeleteModelResponse], error) + // Re-run training, does not create a new model + ResubmitModel(context.Context, *connect.Request[finetuning.ResubmitModelRequest]) (*connect.Response[finetuning.ResubmitModelResponse], error) + // List all the fine tuned models for an organization or user + ListModels(context.Context, *connect.Request[finetuning.ListModelsRequest]) (*connect.Response[finetuning.ListModelsResponse], error) +} + +// NewFineTuningServiceClient constructs a client for the gooseai.FineTuningService service. By +// default, it uses the Connect protocol with the binary Protobuf Codec, asks for gzipped responses, +// and sends uncompressed requests. To use the gRPC or gRPC-Web protocols, supply the +// connect.WithGRPC() or connect.WithGRPCWeb() options. +// +// The URL supplied here should be the base URL for the Connect or gRPC server (for example, +// http://api.acme.com or https://acme.com/grpc). +func NewFineTuningServiceClient(httpClient connect.HTTPClient, baseURL string, opts ...connect.ClientOption) FineTuningServiceClient { + baseURL = strings.TrimRight(baseURL, "/") + return &fineTuningServiceClient{ + createModel: connect.NewClient[finetuning.CreateModelRequest, finetuning.CreateModelResponse]( + httpClient, + baseURL+FineTuningServiceCreateModelProcedure, + opts..., + ), + getModel: connect.NewClient[finetuning.GetModelRequest, finetuning.GetModelResponse]( + httpClient, + baseURL+FineTuningServiceGetModelProcedure, + opts..., + ), + updateModel: connect.NewClient[finetuning.UpdateModelRequest, finetuning.UpdateModelResponse]( + httpClient, + baseURL+FineTuningServiceUpdateModelProcedure, + opts..., + ), + deleteModel: connect.NewClient[finetuning.DeleteModelRequest, finetuning.DeleteModelResponse]( + httpClient, + baseURL+FineTuningServiceDeleteModelProcedure, + opts..., + ), + resubmitModel: connect.NewClient[finetuning.ResubmitModelRequest, finetuning.ResubmitModelResponse]( + httpClient, + baseURL+FineTuningServiceResubmitModelProcedure, + opts..., + ), + listModels: connect.NewClient[finetuning.ListModelsRequest, finetuning.ListModelsResponse]( + httpClient, + baseURL+FineTuningServiceListModelsProcedure, + opts..., + ), + } +} + +// fineTuningServiceClient implements FineTuningServiceClient. +type fineTuningServiceClient struct { + createModel *connect.Client[finetuning.CreateModelRequest, finetuning.CreateModelResponse] + getModel *connect.Client[finetuning.GetModelRequest, finetuning.GetModelResponse] + updateModel *connect.Client[finetuning.UpdateModelRequest, finetuning.UpdateModelResponse] + deleteModel *connect.Client[finetuning.DeleteModelRequest, finetuning.DeleteModelResponse] + resubmitModel *connect.Client[finetuning.ResubmitModelRequest, finetuning.ResubmitModelResponse] + listModels *connect.Client[finetuning.ListModelsRequest, finetuning.ListModelsResponse] +} + +// CreateModel calls gooseai.FineTuningService.CreateModel. +func (c *fineTuningServiceClient) CreateModel(ctx context.Context, req *connect.Request[finetuning.CreateModelRequest]) (*connect.Response[finetuning.CreateModelResponse], error) { + return c.createModel.CallUnary(ctx, req) +} + +// GetModel calls gooseai.FineTuningService.GetModel. +func (c *fineTuningServiceClient) GetModel(ctx context.Context, req *connect.Request[finetuning.GetModelRequest]) (*connect.Response[finetuning.GetModelResponse], error) { + return c.getModel.CallUnary(ctx, req) +} + +// UpdateModel calls gooseai.FineTuningService.UpdateModel. +func (c *fineTuningServiceClient) UpdateModel(ctx context.Context, req *connect.Request[finetuning.UpdateModelRequest]) (*connect.Response[finetuning.UpdateModelResponse], error) { + return c.updateModel.CallUnary(ctx, req) +} + +// DeleteModel calls gooseai.FineTuningService.DeleteModel. +func (c *fineTuningServiceClient) DeleteModel(ctx context.Context, req *connect.Request[finetuning.DeleteModelRequest]) (*connect.Response[finetuning.DeleteModelResponse], error) { + return c.deleteModel.CallUnary(ctx, req) +} + +// ResubmitModel calls gooseai.FineTuningService.ResubmitModel. +func (c *fineTuningServiceClient) ResubmitModel(ctx context.Context, req *connect.Request[finetuning.ResubmitModelRequest]) (*connect.Response[finetuning.ResubmitModelResponse], error) { + return c.resubmitModel.CallUnary(ctx, req) +} + +// ListModels calls gooseai.FineTuningService.ListModels. +func (c *fineTuningServiceClient) ListModels(ctx context.Context, req *connect.Request[finetuning.ListModelsRequest]) (*connect.Response[finetuning.ListModelsResponse], error) { + return c.listModels.CallUnary(ctx, req) +} + +// FineTuningServiceHandler is an implementation of the gooseai.FineTuningService service. +type FineTuningServiceHandler interface { + // Create a new model and begin the fine tuning process + CreateModel(context.Context, *connect.Request[finetuning.CreateModelRequest]) (*connect.Response[finetuning.CreateModelResponse], error) + // Get a FineTuningModel + GetModel(context.Context, *connect.Request[finetuning.GetModelRequest]) (*connect.Response[finetuning.GetModelResponse], error) + // Update a FineTuningModel by id + UpdateModel(context.Context, *connect.Request[finetuning.UpdateModelRequest]) (*connect.Response[finetuning.UpdateModelResponse], error) + // Delete a fine tuned model + DeleteModel(context.Context, *connect.Request[finetuning.DeleteModelRequest]) (*connect.Response[finetuning.DeleteModelResponse], error) + // Re-run training, does not create a new model + ResubmitModel(context.Context, *connect.Request[finetuning.ResubmitModelRequest]) (*connect.Response[finetuning.ResubmitModelResponse], error) + // List all the fine tuned models for an organization or user + ListModels(context.Context, *connect.Request[finetuning.ListModelsRequest]) (*connect.Response[finetuning.ListModelsResponse], error) +} + +// NewFineTuningServiceHandler builds an HTTP handler from the service implementation. It returns +// the path on which to mount the handler and the handler itself. +// +// By default, handlers support the Connect, gRPC, and gRPC-Web protocols with the binary Protobuf +// and JSON codecs. They also support gzip compression. +func NewFineTuningServiceHandler(svc FineTuningServiceHandler, opts ...connect.HandlerOption) (string, http.Handler) { + fineTuningServiceCreateModelHandler := connect.NewUnaryHandler( + FineTuningServiceCreateModelProcedure, + svc.CreateModel, + opts..., + ) + fineTuningServiceGetModelHandler := connect.NewUnaryHandler( + FineTuningServiceGetModelProcedure, + svc.GetModel, + opts..., + ) + fineTuningServiceUpdateModelHandler := connect.NewUnaryHandler( + FineTuningServiceUpdateModelProcedure, + svc.UpdateModel, + opts..., + ) + fineTuningServiceDeleteModelHandler := connect.NewUnaryHandler( + FineTuningServiceDeleteModelProcedure, + svc.DeleteModel, + opts..., + ) + fineTuningServiceResubmitModelHandler := connect.NewUnaryHandler( + FineTuningServiceResubmitModelProcedure, + svc.ResubmitModel, + opts..., + ) + fineTuningServiceListModelsHandler := connect.NewUnaryHandler( + FineTuningServiceListModelsProcedure, + svc.ListModels, + opts..., + ) + return "/gooseai.FineTuningService/", http.HandlerFunc(func(w http.ResponseWriter, r *http.Request) { + switch r.URL.Path { + case FineTuningServiceCreateModelProcedure: + fineTuningServiceCreateModelHandler.ServeHTTP(w, r) + case FineTuningServiceGetModelProcedure: + fineTuningServiceGetModelHandler.ServeHTTP(w, r) + case FineTuningServiceUpdateModelProcedure: + fineTuningServiceUpdateModelHandler.ServeHTTP(w, r) + case FineTuningServiceDeleteModelProcedure: + fineTuningServiceDeleteModelHandler.ServeHTTP(w, r) + case FineTuningServiceResubmitModelProcedure: + fineTuningServiceResubmitModelHandler.ServeHTTP(w, r) + case FineTuningServiceListModelsProcedure: + fineTuningServiceListModelsHandler.ServeHTTP(w, r) + default: + http.NotFound(w, r) + } + }) +} + +// UnimplementedFineTuningServiceHandler returns CodeUnimplemented from all methods. +type UnimplementedFineTuningServiceHandler struct{} + +func (UnimplementedFineTuningServiceHandler) CreateModel(context.Context, *connect.Request[finetuning.CreateModelRequest]) (*connect.Response[finetuning.CreateModelResponse], error) { + return nil, connect.NewError(connect.CodeUnimplemented, errors.New("gooseai.FineTuningService.CreateModel is not implemented")) +} + +func (UnimplementedFineTuningServiceHandler) GetModel(context.Context, *connect.Request[finetuning.GetModelRequest]) (*connect.Response[finetuning.GetModelResponse], error) { + return nil, connect.NewError(connect.CodeUnimplemented, errors.New("gooseai.FineTuningService.GetModel is not implemented")) +} + +func (UnimplementedFineTuningServiceHandler) UpdateModel(context.Context, *connect.Request[finetuning.UpdateModelRequest]) (*connect.Response[finetuning.UpdateModelResponse], error) { + return nil, connect.NewError(connect.CodeUnimplemented, errors.New("gooseai.FineTuningService.UpdateModel is not implemented")) +} + +func (UnimplementedFineTuningServiceHandler) DeleteModel(context.Context, *connect.Request[finetuning.DeleteModelRequest]) (*connect.Response[finetuning.DeleteModelResponse], error) { + return nil, connect.NewError(connect.CodeUnimplemented, errors.New("gooseai.FineTuningService.DeleteModel is not implemented")) +} + +func (UnimplementedFineTuningServiceHandler) ResubmitModel(context.Context, *connect.Request[finetuning.ResubmitModelRequest]) (*connect.Response[finetuning.ResubmitModelResponse], error) { + return nil, connect.NewError(connect.CodeUnimplemented, errors.New("gooseai.FineTuningService.ResubmitModel is not implemented")) +} + +func (UnimplementedFineTuningServiceHandler) ListModels(context.Context, *connect.Request[finetuning.ListModelsRequest]) (*connect.Response[finetuning.ListModelsResponse], error) { + return nil, connect.NewError(connect.CodeUnimplemented, errors.New("gooseai.FineTuningService.ListModels is not implemented")) +} diff --git a/src/stability_api/platform/generation/v1/generation.pb.go b/src/stability_api/platform/generation/v1/generation.pb.go new file mode 100644 index 0000000..c925cc8 --- /dev/null +++ b/src/stability_api/platform/generation/v1/generation.pb.go @@ -0,0 +1,5710 @@ +// Code generated by protoc-gen-go. DO NOT EDIT. +// versions: +// protoc-gen-go v1.31.0 +// protoc (unknown) +// source: stability_api/platform/generation/v1/generation.proto + +package generationv1 + +import ( + tensors "github.com/stability-ai/api-interfaces/src/stability_api/tensors" + protoreflect "google.golang.org/protobuf/reflect/protoreflect" + protoimpl "google.golang.org/protobuf/runtime/protoimpl" + structpb "google.golang.org/protobuf/types/known/structpb" + reflect "reflect" + sync "sync" +) + +const ( + // Verify that this generated code is sufficiently up-to-date. + _ = protoimpl.EnforceVersion(20 - protoimpl.MinVersion) + // Verify that runtime/protoimpl is sufficiently up-to-date. + _ = protoimpl.EnforceVersion(protoimpl.MaxVersion - 20) +) + +type FinishReason int32 + +const ( + FinishReason_NULL FinishReason = 0 + FinishReason_LENGTH FinishReason = 1 + FinishReason_STOP FinishReason = 2 + FinishReason_ERROR FinishReason = 3 + FinishReason_FILTER FinishReason = 4 +) + +// Enum value maps for FinishReason. +var ( + FinishReason_name = map[int32]string{ + 0: "NULL", + 1: "LENGTH", + 2: "STOP", + 3: "ERROR", + 4: "FILTER", + } + FinishReason_value = map[string]int32{ + "NULL": 0, + "LENGTH": 1, + "STOP": 2, + "ERROR": 3, + "FILTER": 4, + } +) + +func (x FinishReason) Enum() *FinishReason { + p := new(FinishReason) + *p = x + return p +} + +func (x FinishReason) String() string { + return protoimpl.X.EnumStringOf(x.Descriptor(), protoreflect.EnumNumber(x)) +} + +func (FinishReason) Descriptor() protoreflect.EnumDescriptor { + return file_stability_api_platform_generation_v1_generation_proto_enumTypes[0].Descriptor() +} + +func (FinishReason) Type() protoreflect.EnumType { + return &file_stability_api_platform_generation_v1_generation_proto_enumTypes[0] +} + +func (x FinishReason) Number() protoreflect.EnumNumber { + return protoreflect.EnumNumber(x) +} + +// Deprecated: Use FinishReason.Descriptor instead. +func (FinishReason) EnumDescriptor() ([]byte, []int) { + return file_stability_api_platform_generation_v1_generation_proto_rawDescGZIP(), []int{0} +} + +type ArtifactType int32 + +const ( + ArtifactType_ARTIFACT_NONE ArtifactType = 0 + ArtifactType_ARTIFACT_IMAGE ArtifactType = 1 + ArtifactType_ARTIFACT_VIDEO ArtifactType = 2 + ArtifactType_ARTIFACT_TEXT ArtifactType = 3 + ArtifactType_ARTIFACT_TOKENS ArtifactType = 4 + ArtifactType_ARTIFACT_EMBEDDING ArtifactType = 5 + ArtifactType_ARTIFACT_CLASSIFICATIONS ArtifactType = 6 + ArtifactType_ARTIFACT_MASK ArtifactType = 7 + ArtifactType_ARTIFACT_LATENT ArtifactType = 8 + ArtifactType_ARTIFACT_TENSOR ArtifactType = 9 + ArtifactType_ARTIFACT_DEPTH ArtifactType = 10 +) + +// Enum value maps for ArtifactType. +var ( + ArtifactType_name = map[int32]string{ + 0: "ARTIFACT_NONE", + 1: "ARTIFACT_IMAGE", + 2: "ARTIFACT_VIDEO", + 3: "ARTIFACT_TEXT", + 4: "ARTIFACT_TOKENS", + 5: "ARTIFACT_EMBEDDING", + 6: "ARTIFACT_CLASSIFICATIONS", + 7: "ARTIFACT_MASK", + 8: "ARTIFACT_LATENT", + 9: "ARTIFACT_TENSOR", + 10: "ARTIFACT_DEPTH", + } + ArtifactType_value = map[string]int32{ + "ARTIFACT_NONE": 0, + "ARTIFACT_IMAGE": 1, + "ARTIFACT_VIDEO": 2, + "ARTIFACT_TEXT": 3, + "ARTIFACT_TOKENS": 4, + "ARTIFACT_EMBEDDING": 5, + "ARTIFACT_CLASSIFICATIONS": 6, + "ARTIFACT_MASK": 7, + "ARTIFACT_LATENT": 8, + "ARTIFACT_TENSOR": 9, + "ARTIFACT_DEPTH": 10, + } +) + +func (x ArtifactType) Enum() *ArtifactType { + p := new(ArtifactType) + *p = x + return p +} + +func (x ArtifactType) String() string { + return protoimpl.X.EnumStringOf(x.Descriptor(), protoreflect.EnumNumber(x)) +} + +func (ArtifactType) Descriptor() protoreflect.EnumDescriptor { + return file_stability_api_platform_generation_v1_generation_proto_enumTypes[1].Descriptor() +} + +func (ArtifactType) Type() protoreflect.EnumType { + return &file_stability_api_platform_generation_v1_generation_proto_enumTypes[1] +} + +func (x ArtifactType) Number() protoreflect.EnumNumber { + return protoreflect.EnumNumber(x) +} + +// Deprecated: Use ArtifactType.Descriptor instead. +func (ArtifactType) EnumDescriptor() ([]byte, []int) { + return file_stability_api_platform_generation_v1_generation_proto_rawDescGZIP(), []int{1} +} + +type MaskedAreaInit int32 + +const ( + MaskedAreaInit_MASKED_AREA_INIT_ZERO MaskedAreaInit = 0 + MaskedAreaInit_MASKED_AREA_INIT_RANDOM MaskedAreaInit = 1 + MaskedAreaInit_MASKED_AREA_INIT_ORIGINAL MaskedAreaInit = 2 +) + +// Enum value maps for MaskedAreaInit. +var ( + MaskedAreaInit_name = map[int32]string{ + 0: "MASKED_AREA_INIT_ZERO", + 1: "MASKED_AREA_INIT_RANDOM", + 2: "MASKED_AREA_INIT_ORIGINAL", + } + MaskedAreaInit_value = map[string]int32{ + "MASKED_AREA_INIT_ZERO": 0, + "MASKED_AREA_INIT_RANDOM": 1, + "MASKED_AREA_INIT_ORIGINAL": 2, + } +) + +func (x MaskedAreaInit) Enum() *MaskedAreaInit { + p := new(MaskedAreaInit) + *p = x + return p +} + +func (x MaskedAreaInit) String() string { + return protoimpl.X.EnumStringOf(x.Descriptor(), protoreflect.EnumNumber(x)) +} + +func (MaskedAreaInit) Descriptor() protoreflect.EnumDescriptor { + return file_stability_api_platform_generation_v1_generation_proto_enumTypes[2].Descriptor() +} + +func (MaskedAreaInit) Type() protoreflect.EnumType { + return &file_stability_api_platform_generation_v1_generation_proto_enumTypes[2] +} + +func (x MaskedAreaInit) Number() protoreflect.EnumNumber { + return protoreflect.EnumNumber(x) +} + +// Deprecated: Use MaskedAreaInit.Descriptor instead. +func (MaskedAreaInit) EnumDescriptor() ([]byte, []int) { + return file_stability_api_platform_generation_v1_generation_proto_rawDescGZIP(), []int{2} +} + +type WeightMethod int32 + +const ( + WeightMethod_TEXT_ENCODER WeightMethod = 0 + WeightMethod_CROSS_ATTENTION WeightMethod = 1 +) + +// Enum value maps for WeightMethod. +var ( + WeightMethod_name = map[int32]string{ + 0: "TEXT_ENCODER", + 1: "CROSS_ATTENTION", + } + WeightMethod_value = map[string]int32{ + "TEXT_ENCODER": 0, + "CROSS_ATTENTION": 1, + } +) + +func (x WeightMethod) Enum() *WeightMethod { + p := new(WeightMethod) + *p = x + return p +} + +func (x WeightMethod) String() string { + return protoimpl.X.EnumStringOf(x.Descriptor(), protoreflect.EnumNumber(x)) +} + +func (WeightMethod) Descriptor() protoreflect.EnumDescriptor { + return file_stability_api_platform_generation_v1_generation_proto_enumTypes[3].Descriptor() +} + +func (WeightMethod) Type() protoreflect.EnumType { + return &file_stability_api_platform_generation_v1_generation_proto_enumTypes[3] +} + +func (x WeightMethod) Number() protoreflect.EnumNumber { + return protoreflect.EnumNumber(x) +} + +// Deprecated: Use WeightMethod.Descriptor instead. +func (WeightMethod) EnumDescriptor() ([]byte, []int) { + return file_stability_api_platform_generation_v1_generation_proto_rawDescGZIP(), []int{3} +} + +// DiffusionSampler identifies which sampler to use for Diffusion, and represents +// the internal set of supported samplers. +type DiffusionSampler int32 + +const ( + DiffusionSampler_SAMPLER_DDIM DiffusionSampler = 0 + DiffusionSampler_SAMPLER_DDPM DiffusionSampler = 1 + DiffusionSampler_SAMPLER_K_EULER DiffusionSampler = 2 + DiffusionSampler_SAMPLER_K_EULER_ANCESTRAL DiffusionSampler = 3 + DiffusionSampler_SAMPLER_K_HEUN DiffusionSampler = 4 + DiffusionSampler_SAMPLER_K_DPM_2 DiffusionSampler = 5 + DiffusionSampler_SAMPLER_K_DPM_2_ANCESTRAL DiffusionSampler = 6 + DiffusionSampler_SAMPLER_K_LMS DiffusionSampler = 7 + DiffusionSampler_SAMPLER_K_DPMPP_2S_ANCESTRAL DiffusionSampler = 8 + DiffusionSampler_SAMPLER_K_DPMPP_2M DiffusionSampler = 9 + DiffusionSampler_SAMPLER_K_DPMPP_SDE DiffusionSampler = 10 +) + +// Enum value maps for DiffusionSampler. +var ( + DiffusionSampler_name = map[int32]string{ + 0: "SAMPLER_DDIM", + 1: "SAMPLER_DDPM", + 2: "SAMPLER_K_EULER", + 3: "SAMPLER_K_EULER_ANCESTRAL", + 4: "SAMPLER_K_HEUN", + 5: "SAMPLER_K_DPM_2", + 6: "SAMPLER_K_DPM_2_ANCESTRAL", + 7: "SAMPLER_K_LMS", + 8: "SAMPLER_K_DPMPP_2S_ANCESTRAL", + 9: "SAMPLER_K_DPMPP_2M", + 10: "SAMPLER_K_DPMPP_SDE", + } + DiffusionSampler_value = map[string]int32{ + "SAMPLER_DDIM": 0, + "SAMPLER_DDPM": 1, + "SAMPLER_K_EULER": 2, + "SAMPLER_K_EULER_ANCESTRAL": 3, + "SAMPLER_K_HEUN": 4, + "SAMPLER_K_DPM_2": 5, + "SAMPLER_K_DPM_2_ANCESTRAL": 6, + "SAMPLER_K_LMS": 7, + "SAMPLER_K_DPMPP_2S_ANCESTRAL": 8, + "SAMPLER_K_DPMPP_2M": 9, + "SAMPLER_K_DPMPP_SDE": 10, + } +) + +func (x DiffusionSampler) Enum() *DiffusionSampler { + p := new(DiffusionSampler) + *p = x + return p +} + +func (x DiffusionSampler) String() string { + return protoimpl.X.EnumStringOf(x.Descriptor(), protoreflect.EnumNumber(x)) +} + +func (DiffusionSampler) Descriptor() protoreflect.EnumDescriptor { + return file_stability_api_platform_generation_v1_generation_proto_enumTypes[4].Descriptor() +} + +func (DiffusionSampler) Type() protoreflect.EnumType { + return &file_stability_api_platform_generation_v1_generation_proto_enumTypes[4] +} + +func (x DiffusionSampler) Number() protoreflect.EnumNumber { + return protoreflect.EnumNumber(x) +} + +// Deprecated: Use DiffusionSampler.Descriptor instead. +func (DiffusionSampler) EnumDescriptor() ([]byte, []int) { + return file_stability_api_platform_generation_v1_generation_proto_rawDescGZIP(), []int{4} +} + +// Future, unimplemented. +type Upscaler int32 + +const ( + Upscaler_UPSCALER_RGB Upscaler = 0 + Upscaler_UPSCALER_GFPGAN Upscaler = 1 + Upscaler_UPSCALER_ESRGAN Upscaler = 2 +) + +// Enum value maps for Upscaler. +var ( + Upscaler_name = map[int32]string{ + 0: "UPSCALER_RGB", + 1: "UPSCALER_GFPGAN", + 2: "UPSCALER_ESRGAN", + } + Upscaler_value = map[string]int32{ + "UPSCALER_RGB": 0, + "UPSCALER_GFPGAN": 1, + "UPSCALER_ESRGAN": 2, + } +) + +func (x Upscaler) Enum() *Upscaler { + p := new(Upscaler) + *p = x + return p +} + +func (x Upscaler) String() string { + return protoimpl.X.EnumStringOf(x.Descriptor(), protoreflect.EnumNumber(x)) +} + +func (Upscaler) Descriptor() protoreflect.EnumDescriptor { + return file_stability_api_platform_generation_v1_generation_proto_enumTypes[5].Descriptor() +} + +func (Upscaler) Type() protoreflect.EnumType { + return &file_stability_api_platform_generation_v1_generation_proto_enumTypes[5] +} + +func (x Upscaler) Number() protoreflect.EnumNumber { + return protoreflect.EnumNumber(x) +} + +// Deprecated: Use Upscaler.Descriptor instead. +func (Upscaler) EnumDescriptor() ([]byte, []int) { + return file_stability_api_platform_generation_v1_generation_proto_rawDescGZIP(), []int{5} +} + +// Presets for CLIP guidance. +type GuidancePreset int32 + +const ( + GuidancePreset_GUIDANCE_PRESET_NONE GuidancePreset = 0 + GuidancePreset_GUIDANCE_PRESET_SIMPLE GuidancePreset = 1 + GuidancePreset_GUIDANCE_PRESET_FAST_BLUE GuidancePreset = 2 + GuidancePreset_GUIDANCE_PRESET_FAST_GREEN GuidancePreset = 3 + GuidancePreset_GUIDANCE_PRESET_SLOW GuidancePreset = 4 + GuidancePreset_GUIDANCE_PRESET_SLOWER GuidancePreset = 5 + GuidancePreset_GUIDANCE_PRESET_SLOWEST GuidancePreset = 6 +) + +// Enum value maps for GuidancePreset. +var ( + GuidancePreset_name = map[int32]string{ + 0: "GUIDANCE_PRESET_NONE", + 1: "GUIDANCE_PRESET_SIMPLE", + 2: "GUIDANCE_PRESET_FAST_BLUE", + 3: "GUIDANCE_PRESET_FAST_GREEN", + 4: "GUIDANCE_PRESET_SLOW", + 5: "GUIDANCE_PRESET_SLOWER", + 6: "GUIDANCE_PRESET_SLOWEST", + } + GuidancePreset_value = map[string]int32{ + "GUIDANCE_PRESET_NONE": 0, + "GUIDANCE_PRESET_SIMPLE": 1, + "GUIDANCE_PRESET_FAST_BLUE": 2, + "GUIDANCE_PRESET_FAST_GREEN": 3, + "GUIDANCE_PRESET_SLOW": 4, + "GUIDANCE_PRESET_SLOWER": 5, + "GUIDANCE_PRESET_SLOWEST": 6, + } +) + +func (x GuidancePreset) Enum() *GuidancePreset { + p := new(GuidancePreset) + *p = x + return p +} + +func (x GuidancePreset) String() string { + return protoimpl.X.EnumStringOf(x.Descriptor(), protoreflect.EnumNumber(x)) +} + +func (GuidancePreset) Descriptor() protoreflect.EnumDescriptor { + return file_stability_api_platform_generation_v1_generation_proto_enumTypes[6].Descriptor() +} + +func (GuidancePreset) Type() protoreflect.EnumType { + return &file_stability_api_platform_generation_v1_generation_proto_enumTypes[6] +} + +func (x GuidancePreset) Number() protoreflect.EnumNumber { + return protoreflect.EnumNumber(x) +} + +// Deprecated: Use GuidancePreset.Descriptor instead. +func (GuidancePreset) EnumDescriptor() ([]byte, []int) { + return file_stability_api_platform_generation_v1_generation_proto_rawDescGZIP(), []int{6} +} + +type ModelArchitecture int32 + +const ( + ModelArchitecture_MODEL_ARCHITECTURE_NONE ModelArchitecture = 0 + ModelArchitecture_MODEL_ARCHITECTURE_CLIP_VIT ModelArchitecture = 1 + ModelArchitecture_MODEL_ARCHITECTURE_CLIP_RESNET ModelArchitecture = 2 + ModelArchitecture_MODEL_ARCHITECTURE_LDM ModelArchitecture = 3 +) + +// Enum value maps for ModelArchitecture. +var ( + ModelArchitecture_name = map[int32]string{ + 0: "MODEL_ARCHITECTURE_NONE", + 1: "MODEL_ARCHITECTURE_CLIP_VIT", + 2: "MODEL_ARCHITECTURE_CLIP_RESNET", + 3: "MODEL_ARCHITECTURE_LDM", + } + ModelArchitecture_value = map[string]int32{ + "MODEL_ARCHITECTURE_NONE": 0, + "MODEL_ARCHITECTURE_CLIP_VIT": 1, + "MODEL_ARCHITECTURE_CLIP_RESNET": 2, + "MODEL_ARCHITECTURE_LDM": 3, + } +) + +func (x ModelArchitecture) Enum() *ModelArchitecture { + p := new(ModelArchitecture) + *p = x + return p +} + +func (x ModelArchitecture) String() string { + return protoimpl.X.EnumStringOf(x.Descriptor(), protoreflect.EnumNumber(x)) +} + +func (ModelArchitecture) Descriptor() protoreflect.EnumDescriptor { + return file_stability_api_platform_generation_v1_generation_proto_enumTypes[7].Descriptor() +} + +func (ModelArchitecture) Type() protoreflect.EnumType { + return &file_stability_api_platform_generation_v1_generation_proto_enumTypes[7] +} + +func (x ModelArchitecture) Number() protoreflect.EnumNumber { + return protoreflect.EnumNumber(x) +} + +// Deprecated: Use ModelArchitecture.Descriptor instead. +func (ModelArchitecture) EnumDescriptor() ([]byte, []int) { + return file_stability_api_platform_generation_v1_generation_proto_rawDescGZIP(), []int{7} +} + +type T2IAdapter int32 + +const ( + T2IAdapter_T2IADAPTER_NONE T2IAdapter = 0 + T2IAdapter_T2IADAPTER_SKETCH T2IAdapter = 1 // these are all compatible with SDXL. + T2IAdapter_T2IADAPTER_DEPTH T2IAdapter = 2 + T2IAdapter_T2IADAPTER_CANNY T2IAdapter = 3 +) + +// Enum value maps for T2IAdapter. +var ( + T2IAdapter_name = map[int32]string{ + 0: "T2IADAPTER_NONE", + 1: "T2IADAPTER_SKETCH", + 2: "T2IADAPTER_DEPTH", + 3: "T2IADAPTER_CANNY", + } + T2IAdapter_value = map[string]int32{ + "T2IADAPTER_NONE": 0, + "T2IADAPTER_SKETCH": 1, + "T2IADAPTER_DEPTH": 2, + "T2IADAPTER_CANNY": 3, + } +) + +func (x T2IAdapter) Enum() *T2IAdapter { + p := new(T2IAdapter) + *p = x + return p +} + +func (x T2IAdapter) String() string { + return protoimpl.X.EnumStringOf(x.Descriptor(), protoreflect.EnumNumber(x)) +} + +func (T2IAdapter) Descriptor() protoreflect.EnumDescriptor { + return file_stability_api_platform_generation_v1_generation_proto_enumTypes[8].Descriptor() +} + +func (T2IAdapter) Type() protoreflect.EnumType { + return &file_stability_api_platform_generation_v1_generation_proto_enumTypes[8] +} + +func (x T2IAdapter) Number() protoreflect.EnumNumber { + return protoreflect.EnumNumber(x) +} + +// Deprecated: Use T2IAdapter.Descriptor instead. +func (T2IAdapter) EnumDescriptor() ([]byte, []int) { + return file_stability_api_platform_generation_v1_generation_proto_rawDescGZIP(), []int{8} +} + +// If adapter_type is not None, then the user can choose what type of init_image to pass in: either an arbitrary image +// which will then be converted to a depth map, sketch, or canny edge for the sketch, depth and canny adapters respectively, +// or they can pass in their own depth map, sketch or canny edge. This field controls whether the init_image should +// be interpreted as an arbitrary image to be preprocessed ready for the t2i adapter, or whether it has already been +// preprocessed elsewhere +type T2IAdapterInit int32 + +const ( + T2IAdapterInit_T2IADAPTERINIT_IMAGE T2IAdapterInit = 0 // these are all compatible with SDXL. + T2IAdapterInit_T2IADAPTERINIT_ADAPTER_IMAGE T2IAdapterInit = 1 +) + +// Enum value maps for T2IAdapterInit. +var ( + T2IAdapterInit_name = map[int32]string{ + 0: "T2IADAPTERINIT_IMAGE", + 1: "T2IADAPTERINIT_ADAPTER_IMAGE", + } + T2IAdapterInit_value = map[string]int32{ + "T2IADAPTERINIT_IMAGE": 0, + "T2IADAPTERINIT_ADAPTER_IMAGE": 1, + } +) + +func (x T2IAdapterInit) Enum() *T2IAdapterInit { + p := new(T2IAdapterInit) + *p = x + return p +} + +func (x T2IAdapterInit) String() string { + return protoimpl.X.EnumStringOf(x.Descriptor(), protoreflect.EnumNumber(x)) +} + +func (T2IAdapterInit) Descriptor() protoreflect.EnumDescriptor { + return file_stability_api_platform_generation_v1_generation_proto_enumTypes[9].Descriptor() +} + +func (T2IAdapterInit) Type() protoreflect.EnumType { + return &file_stability_api_platform_generation_v1_generation_proto_enumTypes[9] +} + +func (x T2IAdapterInit) Number() protoreflect.EnumNumber { + return protoreflect.EnumNumber(x) +} + +// Deprecated: Use T2IAdapterInit.Descriptor instead. +func (T2IAdapterInit) EnumDescriptor() ([]byte, []int) { + return file_stability_api_platform_generation_v1_generation_proto_rawDescGZIP(), []int{9} +} + +type Action int32 + +const ( + Action_ACTION_PASSTHROUGH Action = 0 + Action_ACTION_REGENERATE_DUPLICATE Action = 1 + Action_ACTION_REGENERATE Action = 2 + Action_ACTION_OBFUSCATE_DUPLICATE Action = 3 + Action_ACTION_OBFUSCATE Action = 4 + Action_ACTION_DISCARD Action = 5 +) + +// Enum value maps for Action. +var ( + Action_name = map[int32]string{ + 0: "ACTION_PASSTHROUGH", + 1: "ACTION_REGENERATE_DUPLICATE", + 2: "ACTION_REGENERATE", + 3: "ACTION_OBFUSCATE_DUPLICATE", + 4: "ACTION_OBFUSCATE", + 5: "ACTION_DISCARD", + } + Action_value = map[string]int32{ + "ACTION_PASSTHROUGH": 0, + "ACTION_REGENERATE_DUPLICATE": 1, + "ACTION_REGENERATE": 2, + "ACTION_OBFUSCATE_DUPLICATE": 3, + "ACTION_OBFUSCATE": 4, + "ACTION_DISCARD": 5, + } +) + +func (x Action) Enum() *Action { + p := new(Action) + *p = x + return p +} + +func (x Action) String() string { + return protoimpl.X.EnumStringOf(x.Descriptor(), protoreflect.EnumNumber(x)) +} + +func (Action) Descriptor() protoreflect.EnumDescriptor { + return file_stability_api_platform_generation_v1_generation_proto_enumTypes[10].Descriptor() +} + +func (Action) Type() protoreflect.EnumType { + return &file_stability_api_platform_generation_v1_generation_proto_enumTypes[10] +} + +func (x Action) Number() protoreflect.EnumNumber { + return protoreflect.EnumNumber(x) +} + +// Deprecated: Use Action.Descriptor instead. +func (Action) EnumDescriptor() ([]byte, []int) { + return file_stability_api_platform_generation_v1_generation_proto_rawDescGZIP(), []int{10} +} + +type ClassifierMode int32 + +const ( + ClassifierMode_CLSFR_MODE_ZEROSHOT ClassifierMode = 0 + ClassifierMode_CLSFR_MODE_MULTICLASS ClassifierMode = 1 //CLSFR_MODE_ODDSRATIO = 2; +) + +// Enum value maps for ClassifierMode. +var ( + ClassifierMode_name = map[int32]string{ + 0: "CLSFR_MODE_ZEROSHOT", + 1: "CLSFR_MODE_MULTICLASS", + } + ClassifierMode_value = map[string]int32{ + "CLSFR_MODE_ZEROSHOT": 0, + "CLSFR_MODE_MULTICLASS": 1, + } +) + +func (x ClassifierMode) Enum() *ClassifierMode { + p := new(ClassifierMode) + *p = x + return p +} + +func (x ClassifierMode) String() string { + return protoimpl.X.EnumStringOf(x.Descriptor(), protoreflect.EnumNumber(x)) +} + +func (ClassifierMode) Descriptor() protoreflect.EnumDescriptor { + return file_stability_api_platform_generation_v1_generation_proto_enumTypes[11].Descriptor() +} + +func (ClassifierMode) Type() protoreflect.EnumType { + return &file_stability_api_platform_generation_v1_generation_proto_enumTypes[11] +} + +func (x ClassifierMode) Number() protoreflect.EnumNumber { + return protoreflect.EnumNumber(x) +} + +// Deprecated: Use ClassifierMode.Descriptor instead. +func (ClassifierMode) EnumDescriptor() ([]byte, []int) { + return file_stability_api_platform_generation_v1_generation_proto_rawDescGZIP(), []int{11} +} + +type InterpolateMode int32 + +const ( + InterpolateMode_INTERPOLATE_LINEAR InterpolateMode = 0 + InterpolateMode_INTERPOLATE_RIFE InterpolateMode = 1 + InterpolateMode_INTERPOLATE_VAE_LINEAR InterpolateMode = 2 + InterpolateMode_INTERPOLATE_VAE_SLERP InterpolateMode = 3 + InterpolateMode_INTERPOLATE_FILM InterpolateMode = 4 +) + +// Enum value maps for InterpolateMode. +var ( + InterpolateMode_name = map[int32]string{ + 0: "INTERPOLATE_LINEAR", + 1: "INTERPOLATE_RIFE", + 2: "INTERPOLATE_VAE_LINEAR", + 3: "INTERPOLATE_VAE_SLERP", + 4: "INTERPOLATE_FILM", + } + InterpolateMode_value = map[string]int32{ + "INTERPOLATE_LINEAR": 0, + "INTERPOLATE_RIFE": 1, + "INTERPOLATE_VAE_LINEAR": 2, + "INTERPOLATE_VAE_SLERP": 3, + "INTERPOLATE_FILM": 4, + } +) + +func (x InterpolateMode) Enum() *InterpolateMode { + p := new(InterpolateMode) + *p = x + return p +} + +func (x InterpolateMode) String() string { + return protoimpl.X.EnumStringOf(x.Descriptor(), protoreflect.EnumNumber(x)) +} + +func (InterpolateMode) Descriptor() protoreflect.EnumDescriptor { + return file_stability_api_platform_generation_v1_generation_proto_enumTypes[12].Descriptor() +} + +func (InterpolateMode) Type() protoreflect.EnumType { + return &file_stability_api_platform_generation_v1_generation_proto_enumTypes[12] +} + +func (x InterpolateMode) Number() protoreflect.EnumNumber { + return protoreflect.EnumNumber(x) +} + +// Deprecated: Use InterpolateMode.Descriptor instead. +func (InterpolateMode) EnumDescriptor() ([]byte, []int) { + return file_stability_api_platform_generation_v1_generation_proto_rawDescGZIP(), []int{12} +} + +type BorderMode int32 + +const ( + BorderMode_BORDER_REFLECT BorderMode = 0 // reflect image values across the border + BorderMode_BORDER_REPLICATE BorderMode = 1 // replicate border values outside the image + BorderMode_BORDER_WRAP BorderMode = 2 // wrap around / tile the image values + BorderMode_BORDER_ZERO BorderMode = 3 // use 0 for locations outside the image + BorderMode_BORDER_PREFILL BorderMode = 4 // prefill border areas with values matching the colors around the area +) + +// Enum value maps for BorderMode. +var ( + BorderMode_name = map[int32]string{ + 0: "BORDER_REFLECT", + 1: "BORDER_REPLICATE", + 2: "BORDER_WRAP", + 3: "BORDER_ZERO", + 4: "BORDER_PREFILL", + } + BorderMode_value = map[string]int32{ + "BORDER_REFLECT": 0, + "BORDER_REPLICATE": 1, + "BORDER_WRAP": 2, + "BORDER_ZERO": 3, + "BORDER_PREFILL": 4, + } +) + +func (x BorderMode) Enum() *BorderMode { + p := new(BorderMode) + *p = x + return p +} + +func (x BorderMode) String() string { + return protoimpl.X.EnumStringOf(x.Descriptor(), protoreflect.EnumNumber(x)) +} + +func (BorderMode) Descriptor() protoreflect.EnumDescriptor { + return file_stability_api_platform_generation_v1_generation_proto_enumTypes[13].Descriptor() +} + +func (BorderMode) Type() protoreflect.EnumType { + return &file_stability_api_platform_generation_v1_generation_proto_enumTypes[13] +} + +func (x BorderMode) Number() protoreflect.EnumNumber { + return protoreflect.EnumNumber(x) +} + +// Deprecated: Use BorderMode.Descriptor instead. +func (BorderMode) EnumDescriptor() ([]byte, []int) { + return file_stability_api_platform_generation_v1_generation_proto_rawDescGZIP(), []int{13} +} + +type ColorMatchMode int32 + +const ( + ColorMatchMode_COLOR_MATCH_HSV ColorMatchMode = 0 // match hue, saturation, and value histograms + ColorMatchMode_COLOR_MATCH_LAB ColorMatchMode = 1 // match lightness, a, and b histograms + ColorMatchMode_COLOR_MATCH_RGB ColorMatchMode = 2 // match red, green, and blue histograms +) + +// Enum value maps for ColorMatchMode. +var ( + ColorMatchMode_name = map[int32]string{ + 0: "COLOR_MATCH_HSV", + 1: "COLOR_MATCH_LAB", + 2: "COLOR_MATCH_RGB", + } + ColorMatchMode_value = map[string]int32{ + "COLOR_MATCH_HSV": 0, + "COLOR_MATCH_LAB": 1, + "COLOR_MATCH_RGB": 2, + } +) + +func (x ColorMatchMode) Enum() *ColorMatchMode { + p := new(ColorMatchMode) + *p = x + return p +} + +func (x ColorMatchMode) String() string { + return protoimpl.X.EnumStringOf(x.Descriptor(), protoreflect.EnumNumber(x)) +} + +func (ColorMatchMode) Descriptor() protoreflect.EnumDescriptor { + return file_stability_api_platform_generation_v1_generation_proto_enumTypes[14].Descriptor() +} + +func (ColorMatchMode) Type() protoreflect.EnumType { + return &file_stability_api_platform_generation_v1_generation_proto_enumTypes[14] +} + +func (x ColorMatchMode) Number() protoreflect.EnumNumber { + return protoreflect.EnumNumber(x) +} + +// Deprecated: Use ColorMatchMode.Descriptor instead. +func (ColorMatchMode) EnumDescriptor() ([]byte, []int) { + return file_stability_api_platform_generation_v1_generation_proto_rawDescGZIP(), []int{14} +} + +type CameraType int32 + +const ( + CameraType_CAMERA_PERSPECTIVE CameraType = 0 // Perspective camera + CameraType_CAMERA_ORTHOGRAPHIC CameraType = 1 // Orthographic camera. Well suited for isometric animations +) + +// Enum value maps for CameraType. +var ( + CameraType_name = map[int32]string{ + 0: "CAMERA_PERSPECTIVE", + 1: "CAMERA_ORTHOGRAPHIC", + } + CameraType_value = map[string]int32{ + "CAMERA_PERSPECTIVE": 0, + "CAMERA_ORTHOGRAPHIC": 1, + } +) + +func (x CameraType) Enum() *CameraType { + p := new(CameraType) + *p = x + return p +} + +func (x CameraType) String() string { + return protoimpl.X.EnumStringOf(x.Descriptor(), protoreflect.EnumNumber(x)) +} + +func (CameraType) Descriptor() protoreflect.EnumDescriptor { + return file_stability_api_platform_generation_v1_generation_proto_enumTypes[15].Descriptor() +} + +func (CameraType) Type() protoreflect.EnumType { + return &file_stability_api_platform_generation_v1_generation_proto_enumTypes[15] +} + +func (x CameraType) Number() protoreflect.EnumNumber { + return protoreflect.EnumNumber(x) +} + +// Deprecated: Use CameraType.Descriptor instead. +func (CameraType) EnumDescriptor() ([]byte, []int) { + return file_stability_api_platform_generation_v1_generation_proto_rawDescGZIP(), []int{15} +} + +type RenderMode int32 + +const ( + RenderMode_RENDER_MESH RenderMode = 0 + RenderMode_RENDER_POINTCLOUD RenderMode = 1 +) + +// Enum value maps for RenderMode. +var ( + RenderMode_name = map[int32]string{ + 0: "RENDER_MESH", + 1: "RENDER_POINTCLOUD", + } + RenderMode_value = map[string]int32{ + "RENDER_MESH": 0, + "RENDER_POINTCLOUD": 1, + } +) + +func (x RenderMode) Enum() *RenderMode { + p := new(RenderMode) + *p = x + return p +} + +func (x RenderMode) String() string { + return protoimpl.X.EnumStringOf(x.Descriptor(), protoreflect.EnumNumber(x)) +} + +func (RenderMode) Descriptor() protoreflect.EnumDescriptor { + return file_stability_api_platform_generation_v1_generation_proto_enumTypes[16].Descriptor() +} + +func (RenderMode) Type() protoreflect.EnumType { + return &file_stability_api_platform_generation_v1_generation_proto_enumTypes[16] +} + +func (x RenderMode) Number() protoreflect.EnumNumber { + return protoreflect.EnumNumber(x) +} + +// Deprecated: Use RenderMode.Descriptor instead. +func (RenderMode) EnumDescriptor() ([]byte, []int) { + return file_stability_api_platform_generation_v1_generation_proto_rawDescGZIP(), []int{16} +} + +type AssetAction int32 + +const ( + AssetAction_ASSET_PUT AssetAction = 0 + AssetAction_ASSET_GET AssetAction = 1 + AssetAction_ASSET_DELETE AssetAction = 2 +) + +// Enum value maps for AssetAction. +var ( + AssetAction_name = map[int32]string{ + 0: "ASSET_PUT", + 1: "ASSET_GET", + 2: "ASSET_DELETE", + } + AssetAction_value = map[string]int32{ + "ASSET_PUT": 0, + "ASSET_GET": 1, + "ASSET_DELETE": 2, + } +) + +func (x AssetAction) Enum() *AssetAction { + p := new(AssetAction) + *p = x + return p +} + +func (x AssetAction) String() string { + return protoimpl.X.EnumStringOf(x.Descriptor(), protoreflect.EnumNumber(x)) +} + +func (AssetAction) Descriptor() protoreflect.EnumDescriptor { + return file_stability_api_platform_generation_v1_generation_proto_enumTypes[17].Descriptor() +} + +func (AssetAction) Type() protoreflect.EnumType { + return &file_stability_api_platform_generation_v1_generation_proto_enumTypes[17] +} + +func (x AssetAction) Number() protoreflect.EnumNumber { + return protoreflect.EnumNumber(x) +} + +// Deprecated: Use AssetAction.Descriptor instead. +func (AssetAction) EnumDescriptor() ([]byte, []int) { + return file_stability_api_platform_generation_v1_generation_proto_rawDescGZIP(), []int{17} +} + +// AssetUse defines how the asset is used within a project. This enum matches +// the values the project proto. +type AssetUse int32 + +const ( + AssetUse_ASSET_USE_UNDEFINED AssetUse = 0 // Asset does not have use defined + AssetUse_ASSET_USE_INPUT AssetUse = 1 // Asset is used as an input for the project + AssetUse_ASSET_USE_OUTPUT AssetUse = 2 // Asset is an output from the project + AssetUse_ASSET_USE_INTERMEDIATE AssetUse = 3 // Asset is an output from an intermediate step of the project + AssetUse_ASSET_USE_PROJECT AssetUse = 4 // Asset is used as the project file for the project +) + +// Enum value maps for AssetUse. +var ( + AssetUse_name = map[int32]string{ + 0: "ASSET_USE_UNDEFINED", + 1: "ASSET_USE_INPUT", + 2: "ASSET_USE_OUTPUT", + 3: "ASSET_USE_INTERMEDIATE", + 4: "ASSET_USE_PROJECT", + } + AssetUse_value = map[string]int32{ + "ASSET_USE_UNDEFINED": 0, + "ASSET_USE_INPUT": 1, + "ASSET_USE_OUTPUT": 2, + "ASSET_USE_INTERMEDIATE": 3, + "ASSET_USE_PROJECT": 4, + } +) + +func (x AssetUse) Enum() *AssetUse { + p := new(AssetUse) + *p = x + return p +} + +func (x AssetUse) String() string { + return protoimpl.X.EnumStringOf(x.Descriptor(), protoreflect.EnumNumber(x)) +} + +func (AssetUse) Descriptor() protoreflect.EnumDescriptor { + return file_stability_api_platform_generation_v1_generation_proto_enumTypes[18].Descriptor() +} + +func (AssetUse) Type() protoreflect.EnumType { + return &file_stability_api_platform_generation_v1_generation_proto_enumTypes[18] +} + +func (x AssetUse) Number() protoreflect.EnumNumber { + return protoreflect.EnumNumber(x) +} + +// Deprecated: Use AssetUse.Descriptor instead. +func (AssetUse) EnumDescriptor() ([]byte, []int) { + return file_stability_api_platform_generation_v1_generation_proto_rawDescGZIP(), []int{18} +} + +type StageAction int32 + +const ( + StageAction_STAGE_ACTION_PASS StageAction = 0 + StageAction_STAGE_ACTION_DISCARD StageAction = 1 + StageAction_STAGE_ACTION_RETURN StageAction = 2 +) + +// Enum value maps for StageAction. +var ( + StageAction_name = map[int32]string{ + 0: "STAGE_ACTION_PASS", + 1: "STAGE_ACTION_DISCARD", + 2: "STAGE_ACTION_RETURN", + } + StageAction_value = map[string]int32{ + "STAGE_ACTION_PASS": 0, + "STAGE_ACTION_DISCARD": 1, + "STAGE_ACTION_RETURN": 2, + } +) + +func (x StageAction) Enum() *StageAction { + p := new(StageAction) + *p = x + return p +} + +func (x StageAction) String() string { + return protoimpl.X.EnumStringOf(x.Descriptor(), protoreflect.EnumNumber(x)) +} + +func (StageAction) Descriptor() protoreflect.EnumDescriptor { + return file_stability_api_platform_generation_v1_generation_proto_enumTypes[19].Descriptor() +} + +func (StageAction) Type() protoreflect.EnumType { + return &file_stability_api_platform_generation_v1_generation_proto_enumTypes[19] +} + +func (x StageAction) Number() protoreflect.EnumNumber { + return protoreflect.EnumNumber(x) +} + +// Deprecated: Use StageAction.Descriptor instead. +func (StageAction) EnumDescriptor() ([]byte, []int) { + return file_stability_api_platform_generation_v1_generation_proto_rawDescGZIP(), []int{19} +} + +type ContentCredentialsParameters_ModelMetadata int32 + +const ( + ContentCredentialsParameters_MODEL_METADATA_UNSPECIFIED ContentCredentialsParameters_ModelMetadata = 0 + ContentCredentialsParameters_MODEL_METADATA_SIGN_WITH_ENGINE_ID ContentCredentialsParameters_ModelMetadata = 1 +) + +// Enum value maps for ContentCredentialsParameters_ModelMetadata. +var ( + ContentCredentialsParameters_ModelMetadata_name = map[int32]string{ + 0: "MODEL_METADATA_UNSPECIFIED", + 1: "MODEL_METADATA_SIGN_WITH_ENGINE_ID", + } + ContentCredentialsParameters_ModelMetadata_value = map[string]int32{ + "MODEL_METADATA_UNSPECIFIED": 0, + "MODEL_METADATA_SIGN_WITH_ENGINE_ID": 1, + } +) + +func (x ContentCredentialsParameters_ModelMetadata) Enum() *ContentCredentialsParameters_ModelMetadata { + p := new(ContentCredentialsParameters_ModelMetadata) + *p = x + return p +} + +func (x ContentCredentialsParameters_ModelMetadata) String() string { + return protoimpl.X.EnumStringOf(x.Descriptor(), protoreflect.EnumNumber(x)) +} + +func (ContentCredentialsParameters_ModelMetadata) Descriptor() protoreflect.EnumDescriptor { + return file_stability_api_platform_generation_v1_generation_proto_enumTypes[20].Descriptor() +} + +func (ContentCredentialsParameters_ModelMetadata) Type() protoreflect.EnumType { + return &file_stability_api_platform_generation_v1_generation_proto_enumTypes[20] +} + +func (x ContentCredentialsParameters_ModelMetadata) Number() protoreflect.EnumNumber { + return protoreflect.EnumNumber(x) +} + +// Deprecated: Use ContentCredentialsParameters_ModelMetadata.Descriptor instead. +func (ContentCredentialsParameters_ModelMetadata) EnumDescriptor() ([]byte, []int) { + return file_stability_api_platform_generation_v1_generation_proto_rawDescGZIP(), []int{16, 0} +} + +// Generally, a GPT BPE 16-bit token, paired with an optional string representation. +type Token struct { + state protoimpl.MessageState + sizeCache protoimpl.SizeCache + unknownFields protoimpl.UnknownFields + + Text *string `protobuf:"bytes,1,opt,name=text,proto3,oneof" json:"text,omitempty"` + Id uint32 `protobuf:"varint,2,opt,name=id,proto3" json:"id,omitempty"` +} + +func (x *Token) Reset() { + *x = Token{} + if protoimpl.UnsafeEnabled { + mi := &file_stability_api_platform_generation_v1_generation_proto_msgTypes[0] + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + ms.StoreMessageInfo(mi) + } +} + +func (x *Token) String() string { + return protoimpl.X.MessageStringOf(x) +} + +func (*Token) ProtoMessage() {} + +func (x *Token) ProtoReflect() protoreflect.Message { + mi := &file_stability_api_platform_generation_v1_generation_proto_msgTypes[0] + if protoimpl.UnsafeEnabled && x != nil { + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + if ms.LoadMessageInfo() == nil { + ms.StoreMessageInfo(mi) + } + return ms + } + return mi.MessageOf(x) +} + +// Deprecated: Use Token.ProtoReflect.Descriptor instead. +func (*Token) Descriptor() ([]byte, []int) { + return file_stability_api_platform_generation_v1_generation_proto_rawDescGZIP(), []int{0} +} + +func (x *Token) GetText() string { + if x != nil && x.Text != nil { + return *x.Text + } + return "" +} + +func (x *Token) GetId() uint32 { + if x != nil { + return x.Id + } + return 0 +} + +// Sequence of tokens, paired with the id of the tokenizer used to generate them. +type Tokens struct { + state protoimpl.MessageState + sizeCache protoimpl.SizeCache + unknownFields protoimpl.UnknownFields + + Tokens []*Token `protobuf:"bytes,1,rep,name=tokens,proto3" json:"tokens,omitempty"` + TokenizerId *string `protobuf:"bytes,2,opt,name=tokenizer_id,json=tokenizerId,proto3,oneof" json:"tokenizer_id,omitempty"` +} + +func (x *Tokens) Reset() { + *x = Tokens{} + if protoimpl.UnsafeEnabled { + mi := &file_stability_api_platform_generation_v1_generation_proto_msgTypes[1] + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + ms.StoreMessageInfo(mi) + } +} + +func (x *Tokens) String() string { + return protoimpl.X.MessageStringOf(x) +} + +func (*Tokens) ProtoMessage() {} + +func (x *Tokens) ProtoReflect() protoreflect.Message { + mi := &file_stability_api_platform_generation_v1_generation_proto_msgTypes[1] + if protoimpl.UnsafeEnabled && x != nil { + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + if ms.LoadMessageInfo() == nil { + ms.StoreMessageInfo(mi) + } + return ms + } + return mi.MessageOf(x) +} + +// Deprecated: Use Tokens.ProtoReflect.Descriptor instead. +func (*Tokens) Descriptor() ([]byte, []int) { + return file_stability_api_platform_generation_v1_generation_proto_rawDescGZIP(), []int{1} +} + +func (x *Tokens) GetTokens() []*Token { + if x != nil { + return x.Tokens + } + return nil +} + +func (x *Tokens) GetTokenizerId() string { + if x != nil && x.TokenizerId != nil { + return *x.TokenizerId + } + return "" +} + +// A tangible Artifact, such as an image, video, or text that is used for input +// or output. +type Artifact struct { + state protoimpl.MessageState + sizeCache protoimpl.SizeCache + unknownFields protoimpl.UnknownFields + + Id uint64 `protobuf:"varint,1,opt,name=id,proto3" json:"id,omitempty"` + Type ArtifactType `protobuf:"varint,2,opt,name=type,proto3,enum=stabilityai.platformapis.generation.v1.ArtifactType" json:"type,omitempty"` + Mime string `protobuf:"bytes,3,opt,name=mime,proto3" json:"mime,omitempty"` // MIME type identifier, e.g. "image/png" + Magic *string `protobuf:"bytes,4,opt,name=magic,proto3,oneof" json:"magic,omitempty"` // Magic number, e.g. "PNG" + // Types that are assignable to Data: + // + // *Artifact_Binary + // *Artifact_Text + // *Artifact_Tokens + // *Artifact_Classifier + // *Artifact_Tensor + Data isArtifact_Data `protobuf_oneof:"data"` + Index uint32 `protobuf:"varint,8,opt,name=index,proto3" json:"index,omitempty"` // Index of this artifact in input/output list + FinishReason FinishReason `protobuf:"varint,9,opt,name=finish_reason,json=finishReason,proto3,enum=stabilityai.platformapis.generation.v1.FinishReason" json:"finish_reason,omitempty"` // Reason for finishing, if applicable + Seed uint32 `protobuf:"varint,10,opt,name=seed,proto3" json:"seed,omitempty"` // Seed used to generate this artifact + Uuid string `protobuf:"bytes,12,opt,name=uuid,proto3" json:"uuid,omitempty"` // UUIDv4 of the artifact, used for asset lookup + Size uint64 `protobuf:"varint,13,opt,name=size,proto3" json:"size,omitempty"` // Size of the artifact in bytes +} + +func (x *Artifact) Reset() { + *x = Artifact{} + if protoimpl.UnsafeEnabled { + mi := &file_stability_api_platform_generation_v1_generation_proto_msgTypes[2] + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + ms.StoreMessageInfo(mi) + } +} + +func (x *Artifact) String() string { + return protoimpl.X.MessageStringOf(x) +} + +func (*Artifact) ProtoMessage() {} + +func (x *Artifact) ProtoReflect() protoreflect.Message { + mi := &file_stability_api_platform_generation_v1_generation_proto_msgTypes[2] + if protoimpl.UnsafeEnabled && x != nil { + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + if ms.LoadMessageInfo() == nil { + ms.StoreMessageInfo(mi) + } + return ms + } + return mi.MessageOf(x) +} + +// Deprecated: Use Artifact.ProtoReflect.Descriptor instead. +func (*Artifact) Descriptor() ([]byte, []int) { + return file_stability_api_platform_generation_v1_generation_proto_rawDescGZIP(), []int{2} +} + +func (x *Artifact) GetId() uint64 { + if x != nil { + return x.Id + } + return 0 +} + +func (x *Artifact) GetType() ArtifactType { + if x != nil { + return x.Type + } + return ArtifactType_ARTIFACT_NONE +} + +func (x *Artifact) GetMime() string { + if x != nil { + return x.Mime + } + return "" +} + +func (x *Artifact) GetMagic() string { + if x != nil && x.Magic != nil { + return *x.Magic + } + return "" +} + +func (m *Artifact) GetData() isArtifact_Data { + if m != nil { + return m.Data + } + return nil +} + +func (x *Artifact) GetBinary() []byte { + if x, ok := x.GetData().(*Artifact_Binary); ok { + return x.Binary + } + return nil +} + +func (x *Artifact) GetText() string { + if x, ok := x.GetData().(*Artifact_Text); ok { + return x.Text + } + return "" +} + +func (x *Artifact) GetTokens() *Tokens { + if x, ok := x.GetData().(*Artifact_Tokens); ok { + return x.Tokens + } + return nil +} + +func (x *Artifact) GetClassifier() *ClassifierParameters { + if x, ok := x.GetData().(*Artifact_Classifier); ok { + return x.Classifier + } + return nil +} + +func (x *Artifact) GetTensor() *tensors.Tensor { + if x, ok := x.GetData().(*Artifact_Tensor); ok { + return x.Tensor + } + return nil +} + +func (x *Artifact) GetIndex() uint32 { + if x != nil { + return x.Index + } + return 0 +} + +func (x *Artifact) GetFinishReason() FinishReason { + if x != nil { + return x.FinishReason + } + return FinishReason_NULL +} + +func (x *Artifact) GetSeed() uint32 { + if x != nil { + return x.Seed + } + return 0 +} + +func (x *Artifact) GetUuid() string { + if x != nil { + return x.Uuid + } + return "" +} + +func (x *Artifact) GetSize() uint64 { + if x != nil { + return x.Size + } + return 0 +} + +type isArtifact_Data interface { + isArtifact_Data() +} + +type Artifact_Binary struct { + Binary []byte `protobuf:"bytes,5,opt,name=binary,proto3,oneof"` // Binary data, e.g. PNG image +} + +type Artifact_Text struct { + Text string `protobuf:"bytes,6,opt,name=text,proto3,oneof"` // Text data, e.g. text prompt +} + +type Artifact_Tokens struct { + Tokens *Tokens `protobuf:"bytes,7,opt,name=tokens,proto3,oneof"` // Tokenized text data, e.g. GPT tokens +} + +type Artifact_Classifier struct { + Classifier *ClassifierParameters `protobuf:"bytes,11,opt,name=classifier,proto3,oneof"` +} + +type Artifact_Tensor struct { + Tensor *tensors.Tensor `protobuf:"bytes,14,opt,name=tensor,proto3,oneof"` // torch.Tensor: +} + +func (*Artifact_Binary) isArtifact_Data() {} + +func (*Artifact_Text) isArtifact_Data() {} + +func (*Artifact_Tokens) isArtifact_Data() {} + +func (*Artifact_Classifier) isArtifact_Data() {} + +func (*Artifact_Tensor) isArtifact_Data() {} + +// A set of parameters for each individual Prompt. +type PromptParameters struct { + state protoimpl.MessageState + sizeCache protoimpl.SizeCache + unknownFields protoimpl.UnknownFields + + Init *bool `protobuf:"varint,1,opt,name=init,proto3,oneof" json:"init,omitempty"` // deprecated, no longer used + Weight *float32 `protobuf:"fixed32,2,opt,name=weight,proto3,oneof" json:"weight,omitempty"` +} + +func (x *PromptParameters) Reset() { + *x = PromptParameters{} + if protoimpl.UnsafeEnabled { + mi := &file_stability_api_platform_generation_v1_generation_proto_msgTypes[3] + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + ms.StoreMessageInfo(mi) + } +} + +func (x *PromptParameters) String() string { + return protoimpl.X.MessageStringOf(x) +} + +func (*PromptParameters) ProtoMessage() {} + +func (x *PromptParameters) ProtoReflect() protoreflect.Message { + mi := &file_stability_api_platform_generation_v1_generation_proto_msgTypes[3] + if protoimpl.UnsafeEnabled && x != nil { + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + if ms.LoadMessageInfo() == nil { + ms.StoreMessageInfo(mi) + } + return ms + } + return mi.MessageOf(x) +} + +// Deprecated: Use PromptParameters.ProtoReflect.Descriptor instead. +func (*PromptParameters) Descriptor() ([]byte, []int) { + return file_stability_api_platform_generation_v1_generation_proto_rawDescGZIP(), []int{3} +} + +func (x *PromptParameters) GetInit() bool { + if x != nil && x.Init != nil { + return *x.Init + } + return false +} + +func (x *PromptParameters) GetWeight() float32 { + if x != nil && x.Weight != nil { + return *x.Weight + } + return 0 +} + +// A Prompt is a special type of Artifact that is used to generate an output. +// There can be multiple Prompts that affect the same output. Currently, the +// only Prompts supported are: +// - Text (singular) +// - Init Image (singular, optional, type ARTIFACT_IMAGE) +// - Mask (singular, optional, type ARTIFACT_MASK) +// - Depth (singular, optional, type ARTIFACT_DEPTH) +type Prompt struct { + state protoimpl.MessageState + sizeCache protoimpl.SizeCache + unknownFields protoimpl.UnknownFields + + Parameters *PromptParameters `protobuf:"bytes,1,opt,name=parameters,proto3,oneof" json:"parameters,omitempty"` + // Types that are assignable to Prompt: + // + // *Prompt_Text + // *Prompt_Tokens + // *Prompt_Artifact + Prompt isPrompt_Prompt `protobuf_oneof:"prompt"` +} + +func (x *Prompt) Reset() { + *x = Prompt{} + if protoimpl.UnsafeEnabled { + mi := &file_stability_api_platform_generation_v1_generation_proto_msgTypes[4] + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + ms.StoreMessageInfo(mi) + } +} + +func (x *Prompt) String() string { + return protoimpl.X.MessageStringOf(x) +} + +func (*Prompt) ProtoMessage() {} + +func (x *Prompt) ProtoReflect() protoreflect.Message { + mi := &file_stability_api_platform_generation_v1_generation_proto_msgTypes[4] + if protoimpl.UnsafeEnabled && x != nil { + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + if ms.LoadMessageInfo() == nil { + ms.StoreMessageInfo(mi) + } + return ms + } + return mi.MessageOf(x) +} + +// Deprecated: Use Prompt.ProtoReflect.Descriptor instead. +func (*Prompt) Descriptor() ([]byte, []int) { + return file_stability_api_platform_generation_v1_generation_proto_rawDescGZIP(), []int{4} +} + +func (x *Prompt) GetParameters() *PromptParameters { + if x != nil { + return x.Parameters + } + return nil +} + +func (m *Prompt) GetPrompt() isPrompt_Prompt { + if m != nil { + return m.Prompt + } + return nil +} + +func (x *Prompt) GetText() string { + if x, ok := x.GetPrompt().(*Prompt_Text); ok { + return x.Text + } + return "" +} + +func (x *Prompt) GetTokens() *Tokens { + if x, ok := x.GetPrompt().(*Prompt_Tokens); ok { + return x.Tokens + } + return nil +} + +func (x *Prompt) GetArtifact() *Artifact { + if x, ok := x.GetPrompt().(*Prompt_Artifact); ok { + return x.Artifact + } + return nil +} + +type isPrompt_Prompt interface { + isPrompt_Prompt() +} + +type Prompt_Text struct { + Text string `protobuf:"bytes,2,opt,name=text,proto3,oneof"` +} + +type Prompt_Tokens struct { + Tokens *Tokens `protobuf:"bytes,3,opt,name=tokens,proto3,oneof"` +} + +type Prompt_Artifact struct { + Artifact *Artifact `protobuf:"bytes,4,opt,name=artifact,proto3,oneof"` +} + +func (*Prompt_Text) isPrompt_Prompt() {} + +func (*Prompt_Tokens) isPrompt_Prompt() {} + +func (*Prompt_Artifact) isPrompt_Prompt() {} + +// Parameters that affect the behavior of the sampler, typically used for CFG. +type SamplerParameters struct { + state protoimpl.MessageState + sizeCache protoimpl.SizeCache + unknownFields protoimpl.UnknownFields + + Eta *float32 `protobuf:"fixed32,1,opt,name=eta,proto3,oneof" json:"eta,omitempty"` + SamplingSteps *uint64 `protobuf:"varint,2,opt,name=sampling_steps,json=samplingSteps,proto3,oneof" json:"sampling_steps,omitempty"` + LatentChannels *uint64 `protobuf:"varint,3,opt,name=latent_channels,json=latentChannels,proto3,oneof" json:"latent_channels,omitempty"` + DownsamplingFactor *uint64 `protobuf:"varint,4,opt,name=downsampling_factor,json=downsamplingFactor,proto3,oneof" json:"downsampling_factor,omitempty"` + CfgScale *float32 `protobuf:"fixed32,5,opt,name=cfg_scale,json=cfgScale,proto3,oneof" json:"cfg_scale,omitempty"` + InitNoiseScale *float32 `protobuf:"fixed32,6,opt,name=init_noise_scale,json=initNoiseScale,proto3,oneof" json:"init_noise_scale,omitempty"` // defaults to 0.99 + StepNoiseScale *float32 `protobuf:"fixed32,7,opt,name=step_noise_scale,json=stepNoiseScale,proto3,oneof" json:"step_noise_scale,omitempty"` // defaults to 0.99 +} + +func (x *SamplerParameters) Reset() { + *x = SamplerParameters{} + if protoimpl.UnsafeEnabled { + mi := &file_stability_api_platform_generation_v1_generation_proto_msgTypes[5] + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + ms.StoreMessageInfo(mi) + } +} + +func (x *SamplerParameters) String() string { + return protoimpl.X.MessageStringOf(x) +} + +func (*SamplerParameters) ProtoMessage() {} + +func (x *SamplerParameters) ProtoReflect() protoreflect.Message { + mi := &file_stability_api_platform_generation_v1_generation_proto_msgTypes[5] + if protoimpl.UnsafeEnabled && x != nil { + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + if ms.LoadMessageInfo() == nil { + ms.StoreMessageInfo(mi) + } + return ms + } + return mi.MessageOf(x) +} + +// Deprecated: Use SamplerParameters.ProtoReflect.Descriptor instead. +func (*SamplerParameters) Descriptor() ([]byte, []int) { + return file_stability_api_platform_generation_v1_generation_proto_rawDescGZIP(), []int{5} +} + +func (x *SamplerParameters) GetEta() float32 { + if x != nil && x.Eta != nil { + return *x.Eta + } + return 0 +} + +func (x *SamplerParameters) GetSamplingSteps() uint64 { + if x != nil && x.SamplingSteps != nil { + return *x.SamplingSteps + } + return 0 +} + +func (x *SamplerParameters) GetLatentChannels() uint64 { + if x != nil && x.LatentChannels != nil { + return *x.LatentChannels + } + return 0 +} + +func (x *SamplerParameters) GetDownsamplingFactor() uint64 { + if x != nil && x.DownsamplingFactor != nil { + return *x.DownsamplingFactor + } + return 0 +} + +func (x *SamplerParameters) GetCfgScale() float32 { + if x != nil && x.CfgScale != nil { + return *x.CfgScale + } + return 0 +} + +func (x *SamplerParameters) GetInitNoiseScale() float32 { + if x != nil && x.InitNoiseScale != nil { + return *x.InitNoiseScale + } + return 0 +} + +func (x *SamplerParameters) GetStepNoiseScale() float32 { + if x != nil && x.StepNoiseScale != nil { + return *x.StepNoiseScale + } + return 0 +} + +// Unused, but reserved for future use. Adjustments to the latents after +// initialization. +type ConditionerParameters struct { + state protoimpl.MessageState + sizeCache protoimpl.SizeCache + unknownFields protoimpl.UnknownFields + + VectorAdjustPrior *string `protobuf:"bytes,1,opt,name=vector_adjust_prior,json=vectorAdjustPrior,proto3,oneof" json:"vector_adjust_prior,omitempty"` + Conditioner *Model `protobuf:"bytes,2,opt,name=conditioner,proto3,oneof" json:"conditioner,omitempty"` +} + +func (x *ConditionerParameters) Reset() { + *x = ConditionerParameters{} + if protoimpl.UnsafeEnabled { + mi := &file_stability_api_platform_generation_v1_generation_proto_msgTypes[6] + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + ms.StoreMessageInfo(mi) + } +} + +func (x *ConditionerParameters) String() string { + return protoimpl.X.MessageStringOf(x) +} + +func (*ConditionerParameters) ProtoMessage() {} + +func (x *ConditionerParameters) ProtoReflect() protoreflect.Message { + mi := &file_stability_api_platform_generation_v1_generation_proto_msgTypes[6] + if protoimpl.UnsafeEnabled && x != nil { + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + if ms.LoadMessageInfo() == nil { + ms.StoreMessageInfo(mi) + } + return ms + } + return mi.MessageOf(x) +} + +// Deprecated: Use ConditionerParameters.ProtoReflect.Descriptor instead. +func (*ConditionerParameters) Descriptor() ([]byte, []int) { + return file_stability_api_platform_generation_v1_generation_proto_rawDescGZIP(), []int{6} +} + +func (x *ConditionerParameters) GetVectorAdjustPrior() string { + if x != nil && x.VectorAdjustPrior != nil { + return *x.VectorAdjustPrior + } + return "" +} + +func (x *ConditionerParameters) GetConditioner() *Model { + if x != nil { + return x.Conditioner + } + return nil +} + +// When does this schedule definition apply? +type ScheduleParameters struct { + state protoimpl.MessageState + sizeCache protoimpl.SizeCache + unknownFields protoimpl.UnknownFields + + Start *float32 `protobuf:"fixed32,1,opt,name=start,proto3,oneof" json:"start,omitempty"` // 0.0 to 1.0 + End *float32 `protobuf:"fixed32,2,opt,name=end,proto3,oneof" json:"end,omitempty"` // 0.0 to 1.0 + Value *float32 `protobuf:"fixed32,3,opt,name=value,proto3,oneof" json:"value,omitempty"` // float value to apply on this schedule +} + +func (x *ScheduleParameters) Reset() { + *x = ScheduleParameters{} + if protoimpl.UnsafeEnabled { + mi := &file_stability_api_platform_generation_v1_generation_proto_msgTypes[7] + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + ms.StoreMessageInfo(mi) + } +} + +func (x *ScheduleParameters) String() string { + return protoimpl.X.MessageStringOf(x) +} + +func (*ScheduleParameters) ProtoMessage() {} + +func (x *ScheduleParameters) ProtoReflect() protoreflect.Message { + mi := &file_stability_api_platform_generation_v1_generation_proto_msgTypes[7] + if protoimpl.UnsafeEnabled && x != nil { + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + if ms.LoadMessageInfo() == nil { + ms.StoreMessageInfo(mi) + } + return ms + } + return mi.MessageOf(x) +} + +// Deprecated: Use ScheduleParameters.ProtoReflect.Descriptor instead. +func (*ScheduleParameters) Descriptor() ([]byte, []int) { + return file_stability_api_platform_generation_v1_generation_proto_rawDescGZIP(), []int{7} +} + +func (x *ScheduleParameters) GetStart() float32 { + if x != nil && x.Start != nil { + return *x.Start + } + return 0 +} + +func (x *ScheduleParameters) GetEnd() float32 { + if x != nil && x.End != nil { + return *x.End + } + return 0 +} + +func (x *ScheduleParameters) GetValue() float32 { + if x != nil && x.Value != nil { + return *x.Value + } + return 0 +} + +// Parameters that apply to this block of the schedule. +type StepParameter struct { + state protoimpl.MessageState + sizeCache protoimpl.SizeCache + unknownFields protoimpl.UnknownFields + + ScaledStep float32 `protobuf:"fixed32,1,opt,name=scaled_step,json=scaledStep,proto3" json:"scaled_step,omitempty"` + Sampler *SamplerParameters `protobuf:"bytes,2,opt,name=sampler,proto3,oneof" json:"sampler,omitempty"` + Schedule *ScheduleParameters `protobuf:"bytes,3,opt,name=schedule,proto3,oneof" json:"schedule,omitempty"` + Guidance *GuidanceParameters `protobuf:"bytes,4,opt,name=guidance,proto3,oneof" json:"guidance,omitempty"` +} + +func (x *StepParameter) Reset() { + *x = StepParameter{} + if protoimpl.UnsafeEnabled { + mi := &file_stability_api_platform_generation_v1_generation_proto_msgTypes[8] + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + ms.StoreMessageInfo(mi) + } +} + +func (x *StepParameter) String() string { + return protoimpl.X.MessageStringOf(x) +} + +func (*StepParameter) ProtoMessage() {} + +func (x *StepParameter) ProtoReflect() protoreflect.Message { + mi := &file_stability_api_platform_generation_v1_generation_proto_msgTypes[8] + if protoimpl.UnsafeEnabled && x != nil { + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + if ms.LoadMessageInfo() == nil { + ms.StoreMessageInfo(mi) + } + return ms + } + return mi.MessageOf(x) +} + +// Deprecated: Use StepParameter.ProtoReflect.Descriptor instead. +func (*StepParameter) Descriptor() ([]byte, []int) { + return file_stability_api_platform_generation_v1_generation_proto_rawDescGZIP(), []int{8} +} + +func (x *StepParameter) GetScaledStep() float32 { + if x != nil { + return x.ScaledStep + } + return 0 +} + +func (x *StepParameter) GetSampler() *SamplerParameters { + if x != nil { + return x.Sampler + } + return nil +} + +func (x *StepParameter) GetSchedule() *ScheduleParameters { + if x != nil { + return x.Schedule + } + return nil +} + +func (x *StepParameter) GetGuidance() *GuidanceParameters { + if x != nil { + return x.Guidance + } + return nil +} + +type Model struct { + state protoimpl.MessageState + sizeCache protoimpl.SizeCache + unknownFields protoimpl.UnknownFields + + Architecture ModelArchitecture `protobuf:"varint,1,opt,name=architecture,proto3,enum=stabilityai.platformapis.generation.v1.ModelArchitecture" json:"architecture,omitempty"` + Publisher string `protobuf:"bytes,2,opt,name=publisher,proto3" json:"publisher,omitempty"` + Dataset string `protobuf:"bytes,3,opt,name=dataset,proto3" json:"dataset,omitempty"` + Version float32 `protobuf:"fixed32,4,opt,name=version,proto3" json:"version,omitempty"` + SemanticVersion string `protobuf:"bytes,5,opt,name=semantic_version,json=semanticVersion,proto3" json:"semantic_version,omitempty"` + Alias string `protobuf:"bytes,6,opt,name=alias,proto3" json:"alias,omitempty"` +} + +func (x *Model) Reset() { + *x = Model{} + if protoimpl.UnsafeEnabled { + mi := &file_stability_api_platform_generation_v1_generation_proto_msgTypes[9] + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + ms.StoreMessageInfo(mi) + } +} + +func (x *Model) String() string { + return protoimpl.X.MessageStringOf(x) +} + +func (*Model) ProtoMessage() {} + +func (x *Model) ProtoReflect() protoreflect.Message { + mi := &file_stability_api_platform_generation_v1_generation_proto_msgTypes[9] + if protoimpl.UnsafeEnabled && x != nil { + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + if ms.LoadMessageInfo() == nil { + ms.StoreMessageInfo(mi) + } + return ms + } + return mi.MessageOf(x) +} + +// Deprecated: Use Model.ProtoReflect.Descriptor instead. +func (*Model) Descriptor() ([]byte, []int) { + return file_stability_api_platform_generation_v1_generation_proto_rawDescGZIP(), []int{9} +} + +func (x *Model) GetArchitecture() ModelArchitecture { + if x != nil { + return x.Architecture + } + return ModelArchitecture_MODEL_ARCHITECTURE_NONE +} + +func (x *Model) GetPublisher() string { + if x != nil { + return x.Publisher + } + return "" +} + +func (x *Model) GetDataset() string { + if x != nil { + return x.Dataset + } + return "" +} + +func (x *Model) GetVersion() float32 { + if x != nil { + return x.Version + } + return 0 +} + +func (x *Model) GetSemanticVersion() string { + if x != nil { + return x.SemanticVersion + } + return "" +} + +func (x *Model) GetAlias() string { + if x != nil { + return x.Alias + } + return "" +} + +type CutoutParameters struct { + state protoimpl.MessageState + sizeCache protoimpl.SizeCache + unknownFields protoimpl.UnknownFields + + Cutouts []*CutoutParameters `protobuf:"bytes,1,rep,name=cutouts,proto3" json:"cutouts,omitempty"` // Nested cutouts, unsupported + Count *uint32 `protobuf:"varint,2,opt,name=count,proto3,oneof" json:"count,omitempty"` // 0 to n, usually 8 to 32, 0 inner + Gray *float32 `protobuf:"fixed32,3,opt,name=gray,proto3,oneof" json:"gray,omitempty"` // 0.0 to 1.0, defaults to 0.2 + Blur *float32 `protobuf:"fixed32,4,opt,name=blur,proto3,oneof" json:"blur,omitempty"` // percentage of cutouts to blur + SizePower *float32 `protobuf:"fixed32,5,opt,name=size_power,json=sizePower,proto3,oneof" json:"size_power,omitempty"` // defaults to inner: 0.5, outer: 0.0 +} + +func (x *CutoutParameters) Reset() { + *x = CutoutParameters{} + if protoimpl.UnsafeEnabled { + mi := &file_stability_api_platform_generation_v1_generation_proto_msgTypes[10] + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + ms.StoreMessageInfo(mi) + } +} + +func (x *CutoutParameters) String() string { + return protoimpl.X.MessageStringOf(x) +} + +func (*CutoutParameters) ProtoMessage() {} + +func (x *CutoutParameters) ProtoReflect() protoreflect.Message { + mi := &file_stability_api_platform_generation_v1_generation_proto_msgTypes[10] + if protoimpl.UnsafeEnabled && x != nil { + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + if ms.LoadMessageInfo() == nil { + ms.StoreMessageInfo(mi) + } + return ms + } + return mi.MessageOf(x) +} + +// Deprecated: Use CutoutParameters.ProtoReflect.Descriptor instead. +func (*CutoutParameters) Descriptor() ([]byte, []int) { + return file_stability_api_platform_generation_v1_generation_proto_rawDescGZIP(), []int{10} +} + +func (x *CutoutParameters) GetCutouts() []*CutoutParameters { + if x != nil { + return x.Cutouts + } + return nil +} + +func (x *CutoutParameters) GetCount() uint32 { + if x != nil && x.Count != nil { + return *x.Count + } + return 0 +} + +func (x *CutoutParameters) GetGray() float32 { + if x != nil && x.Gray != nil { + return *x.Gray + } + return 0 +} + +func (x *CutoutParameters) GetBlur() float32 { + if x != nil && x.Blur != nil { + return *x.Blur + } + return 0 +} + +func (x *CutoutParameters) GetSizePower() float32 { + if x != nil && x.SizePower != nil { + return *x.SizePower + } + return 0 +} + +// GuidanceScheduleParameters are used to define a schedule for CLIP guidance, and +// are used to define the behavior of the guidance over time. They are relative +// to the total number of steps, and are scaled to the number of steps in the +// current run. +type GuidanceScheduleParameters struct { + state protoimpl.MessageState + sizeCache protoimpl.SizeCache + unknownFields protoimpl.UnknownFields + + Duration float32 `protobuf:"fixed32,1,opt,name=duration,proto3" json:"duration,omitempty"` + Value float32 `protobuf:"fixed32,2,opt,name=value,proto3" json:"value,omitempty"` +} + +func (x *GuidanceScheduleParameters) Reset() { + *x = GuidanceScheduleParameters{} + if protoimpl.UnsafeEnabled { + mi := &file_stability_api_platform_generation_v1_generation_proto_msgTypes[11] + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + ms.StoreMessageInfo(mi) + } +} + +func (x *GuidanceScheduleParameters) String() string { + return protoimpl.X.MessageStringOf(x) +} + +func (*GuidanceScheduleParameters) ProtoMessage() {} + +func (x *GuidanceScheduleParameters) ProtoReflect() protoreflect.Message { + mi := &file_stability_api_platform_generation_v1_generation_proto_msgTypes[11] + if protoimpl.UnsafeEnabled && x != nil { + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + if ms.LoadMessageInfo() == nil { + ms.StoreMessageInfo(mi) + } + return ms + } + return mi.MessageOf(x) +} + +// Deprecated: Use GuidanceScheduleParameters.ProtoReflect.Descriptor instead. +func (*GuidanceScheduleParameters) Descriptor() ([]byte, []int) { + return file_stability_api_platform_generation_v1_generation_proto_rawDescGZIP(), []int{11} +} + +func (x *GuidanceScheduleParameters) GetDuration() float32 { + if x != nil { + return x.Duration + } + return 0 +} + +func (x *GuidanceScheduleParameters) GetValue() float32 { + if x != nil { + return x.Value + } + return 0 +} + +// Parameters that affect the behavior of the guidance, typically used for CLIP. +// We can specify more than one model, and the guidance will be a weighted sum +// of the models. +type GuidanceInstanceParameters struct { + state protoimpl.MessageState + sizeCache protoimpl.SizeCache + unknownFields protoimpl.UnknownFields + + Models []*Model `protobuf:"bytes,2,rep,name=models,proto3" json:"models,omitempty"` // models to use for this set + GuidanceStrength *float32 `protobuf:"fixed32,3,opt,name=guidance_strength,json=guidanceStrength,proto3,oneof" json:"guidance_strength,omitempty"` // 0.0 to 1.0, usually 0.05 to 0.225 + Schedule []*GuidanceScheduleParameters `protobuf:"bytes,4,rep,name=schedule,proto3" json:"schedule,omitempty"` // when to apply guidance + Cutouts *CutoutParameters `protobuf:"bytes,5,opt,name=cutouts,proto3,oneof" json:"cutouts,omitempty"` // cutout parameters + Prompt *Prompt `protobuf:"bytes,6,opt,name=prompt,proto3,oneof" json:"prompt,omitempty"` // prompt to use for guidance +} + +func (x *GuidanceInstanceParameters) Reset() { + *x = GuidanceInstanceParameters{} + if protoimpl.UnsafeEnabled { + mi := &file_stability_api_platform_generation_v1_generation_proto_msgTypes[12] + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + ms.StoreMessageInfo(mi) + } +} + +func (x *GuidanceInstanceParameters) String() string { + return protoimpl.X.MessageStringOf(x) +} + +func (*GuidanceInstanceParameters) ProtoMessage() {} + +func (x *GuidanceInstanceParameters) ProtoReflect() protoreflect.Message { + mi := &file_stability_api_platform_generation_v1_generation_proto_msgTypes[12] + if protoimpl.UnsafeEnabled && x != nil { + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + if ms.LoadMessageInfo() == nil { + ms.StoreMessageInfo(mi) + } + return ms + } + return mi.MessageOf(x) +} + +// Deprecated: Use GuidanceInstanceParameters.ProtoReflect.Descriptor instead. +func (*GuidanceInstanceParameters) Descriptor() ([]byte, []int) { + return file_stability_api_platform_generation_v1_generation_proto_rawDescGZIP(), []int{12} +} + +func (x *GuidanceInstanceParameters) GetModels() []*Model { + if x != nil { + return x.Models + } + return nil +} + +func (x *GuidanceInstanceParameters) GetGuidanceStrength() float32 { + if x != nil && x.GuidanceStrength != nil { + return *x.GuidanceStrength + } + return 0 +} + +func (x *GuidanceInstanceParameters) GetSchedule() []*GuidanceScheduleParameters { + if x != nil { + return x.Schedule + } + return nil +} + +func (x *GuidanceInstanceParameters) GetCutouts() *CutoutParameters { + if x != nil { + return x.Cutouts + } + return nil +} + +func (x *GuidanceInstanceParameters) GetPrompt() *Prompt { + if x != nil { + return x.Prompt + } + return nil +} + +// Parameters that affect the behavior of the guidance, typically used for CLIP. +// The omission of this field implies the default guidance of CFG. +type GuidanceParameters struct { + state protoimpl.MessageState + sizeCache protoimpl.SizeCache + unknownFields protoimpl.UnknownFields + + GuidancePreset GuidancePreset `protobuf:"varint,1,opt,name=guidance_preset,json=guidancePreset,proto3,enum=stabilityai.platformapis.generation.v1.GuidancePreset" json:"guidance_preset,omitempty"` // base preset for guidance + Instances []*GuidanceInstanceParameters `protobuf:"bytes,2,rep,name=instances,proto3" json:"instances,omitempty"` // guidance instances +} + +func (x *GuidanceParameters) Reset() { + *x = GuidanceParameters{} + if protoimpl.UnsafeEnabled { + mi := &file_stability_api_platform_generation_v1_generation_proto_msgTypes[13] + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + ms.StoreMessageInfo(mi) + } +} + +func (x *GuidanceParameters) String() string { + return protoimpl.X.MessageStringOf(x) +} + +func (*GuidanceParameters) ProtoMessage() {} + +func (x *GuidanceParameters) ProtoReflect() protoreflect.Message { + mi := &file_stability_api_platform_generation_v1_generation_proto_msgTypes[13] + if protoimpl.UnsafeEnabled && x != nil { + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + if ms.LoadMessageInfo() == nil { + ms.StoreMessageInfo(mi) + } + return ms + } + return mi.MessageOf(x) +} + +// Deprecated: Use GuidanceParameters.ProtoReflect.Descriptor instead. +func (*GuidanceParameters) Descriptor() ([]byte, []int) { + return file_stability_api_platform_generation_v1_generation_proto_rawDescGZIP(), []int{13} +} + +func (x *GuidanceParameters) GetGuidancePreset() GuidancePreset { + if x != nil { + return x.GuidancePreset + } + return GuidancePreset_GUIDANCE_PRESET_NONE +} + +func (x *GuidanceParameters) GetInstances() []*GuidanceInstanceParameters { + if x != nil { + return x.Instances + } + return nil +} + +type TransformType struct { + state protoimpl.MessageState + sizeCache protoimpl.SizeCache + unknownFields protoimpl.UnknownFields + + // Types that are assignable to Type: + // + // *TransformType_Diffusion + // *TransformType_Upscaler + Type isTransformType_Type `protobuf_oneof:"type"` +} + +func (x *TransformType) Reset() { + *x = TransformType{} + if protoimpl.UnsafeEnabled { + mi := &file_stability_api_platform_generation_v1_generation_proto_msgTypes[14] + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + ms.StoreMessageInfo(mi) + } +} + +func (x *TransformType) String() string { + return protoimpl.X.MessageStringOf(x) +} + +func (*TransformType) ProtoMessage() {} + +func (x *TransformType) ProtoReflect() protoreflect.Message { + mi := &file_stability_api_platform_generation_v1_generation_proto_msgTypes[14] + if protoimpl.UnsafeEnabled && x != nil { + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + if ms.LoadMessageInfo() == nil { + ms.StoreMessageInfo(mi) + } + return ms + } + return mi.MessageOf(x) +} + +// Deprecated: Use TransformType.ProtoReflect.Descriptor instead. +func (*TransformType) Descriptor() ([]byte, []int) { + return file_stability_api_platform_generation_v1_generation_proto_rawDescGZIP(), []int{14} +} + +func (m *TransformType) GetType() isTransformType_Type { + if m != nil { + return m.Type + } + return nil +} + +func (x *TransformType) GetDiffusion() DiffusionSampler { + if x, ok := x.GetType().(*TransformType_Diffusion); ok { + return x.Diffusion + } + return DiffusionSampler_SAMPLER_DDIM +} + +func (x *TransformType) GetUpscaler() Upscaler { + if x, ok := x.GetType().(*TransformType_Upscaler); ok { + return x.Upscaler + } + return Upscaler_UPSCALER_RGB +} + +type isTransformType_Type interface { + isTransformType_Type() +} + +type TransformType_Diffusion struct { + Diffusion DiffusionSampler `protobuf:"varint,1,opt,name=diffusion,proto3,enum=stabilityai.platformapis.generation.v1.DiffusionSampler,oneof"` +} + +type TransformType_Upscaler struct { + Upscaler Upscaler `protobuf:"varint,2,opt,name=upscaler,proto3,enum=stabilityai.platformapis.generation.v1.Upscaler,oneof"` +} + +func (*TransformType_Diffusion) isTransformType_Type() {} + +func (*TransformType_Upscaler) isTransformType_Type() {} + +type T2IAdapterParameter struct { + state protoimpl.MessageState + sizeCache protoimpl.SizeCache + unknownFields protoimpl.UnknownFields + + AdapterType T2IAdapter `protobuf:"varint,1,opt,name=adapter_type,json=adapterType,proto3,enum=stabilityai.platformapis.generation.v1.T2IAdapter" json:"adapter_type,omitempty"` + AdapterStrength float32 `protobuf:"fixed32,2,opt,name=adapter_strength,json=adapterStrength,proto3" json:"adapter_strength,omitempty"` + AdapterInitType T2IAdapterInit `protobuf:"varint,3,opt,name=adapter_init_type,json=adapterInitType,proto3,enum=stabilityai.platformapis.generation.v1.T2IAdapterInit" json:"adapter_init_type,omitempty"` +} + +func (x *T2IAdapterParameter) Reset() { + *x = T2IAdapterParameter{} + if protoimpl.UnsafeEnabled { + mi := &file_stability_api_platform_generation_v1_generation_proto_msgTypes[15] + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + ms.StoreMessageInfo(mi) + } +} + +func (x *T2IAdapterParameter) String() string { + return protoimpl.X.MessageStringOf(x) +} + +func (*T2IAdapterParameter) ProtoMessage() {} + +func (x *T2IAdapterParameter) ProtoReflect() protoreflect.Message { + mi := &file_stability_api_platform_generation_v1_generation_proto_msgTypes[15] + if protoimpl.UnsafeEnabled && x != nil { + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + if ms.LoadMessageInfo() == nil { + ms.StoreMessageInfo(mi) + } + return ms + } + return mi.MessageOf(x) +} + +// Deprecated: Use T2IAdapterParameter.ProtoReflect.Descriptor instead. +func (*T2IAdapterParameter) Descriptor() ([]byte, []int) { + return file_stability_api_platform_generation_v1_generation_proto_rawDescGZIP(), []int{15} +} + +func (x *T2IAdapterParameter) GetAdapterType() T2IAdapter { + if x != nil { + return x.AdapterType + } + return T2IAdapter_T2IADAPTER_NONE +} + +func (x *T2IAdapterParameter) GetAdapterStrength() float32 { + if x != nil { + return x.AdapterStrength + } + return 0 +} + +func (x *T2IAdapterParameter) GetAdapterInitType() T2IAdapterInit { + if x != nil { + return x.AdapterInitType + } + return T2IAdapterInit_T2IADAPTERINIT_IMAGE +} + +type ContentCredentialsParameters struct { + state protoimpl.MessageState + sizeCache protoimpl.SizeCache + unknownFields protoimpl.UnknownFields + + // Types that are assignable to Parameters: + // + // *ContentCredentialsParameters_ModelMetadata_ + Parameters isContentCredentialsParameters_Parameters `protobuf_oneof:"parameters"` +} + +func (x *ContentCredentialsParameters) Reset() { + *x = ContentCredentialsParameters{} + if protoimpl.UnsafeEnabled { + mi := &file_stability_api_platform_generation_v1_generation_proto_msgTypes[16] + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + ms.StoreMessageInfo(mi) + } +} + +func (x *ContentCredentialsParameters) String() string { + return protoimpl.X.MessageStringOf(x) +} + +func (*ContentCredentialsParameters) ProtoMessage() {} + +func (x *ContentCredentialsParameters) ProtoReflect() protoreflect.Message { + mi := &file_stability_api_platform_generation_v1_generation_proto_msgTypes[16] + if protoimpl.UnsafeEnabled && x != nil { + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + if ms.LoadMessageInfo() == nil { + ms.StoreMessageInfo(mi) + } + return ms + } + return mi.MessageOf(x) +} + +// Deprecated: Use ContentCredentialsParameters.ProtoReflect.Descriptor instead. +func (*ContentCredentialsParameters) Descriptor() ([]byte, []int) { + return file_stability_api_platform_generation_v1_generation_proto_rawDescGZIP(), []int{16} +} + +func (m *ContentCredentialsParameters) GetParameters() isContentCredentialsParameters_Parameters { + if m != nil { + return m.Parameters + } + return nil +} + +func (x *ContentCredentialsParameters) GetModelMetadata() ContentCredentialsParameters_ModelMetadata { + if x, ok := x.GetParameters().(*ContentCredentialsParameters_ModelMetadata_); ok { + return x.ModelMetadata + } + return ContentCredentialsParameters_MODEL_METADATA_UNSPECIFIED +} + +type isContentCredentialsParameters_Parameters interface { + isContentCredentialsParameters_Parameters() +} + +type ContentCredentialsParameters_ModelMetadata_ struct { + ModelMetadata ContentCredentialsParameters_ModelMetadata `protobuf:"varint,1,opt,name=model_metadata,json=modelMetadata,proto3,enum=stabilityai.platformapis.generation.v1.ContentCredentialsParameters_ModelMetadata,oneof"` +} + +func (*ContentCredentialsParameters_ModelMetadata_) isContentCredentialsParameters_Parameters() {} + +// FineTuningParameters specify which fine-tuned models to use for generation. +type FineTuningParameters struct { + state protoimpl.MessageState + sizeCache protoimpl.SizeCache + unknownFields protoimpl.UnknownFields + + // The id of the fine-tuned model to generate content from. + // See FineTuningModel.id in finetuning.proto. + // Model Id is created upon invoking CreateFineTuningModel. + // When GetFineTuningModelStatus returns a FineTuningModelStatus of + // FINE_TUNING_MODEL_STATUS_COMPLETED, the model can be used + // for generating images. + ModelId string `protobuf:"bytes,1,opt,name=model_id,json=modelId,proto3" json:"model_id,omitempty"` + Weight *float32 `protobuf:"fixed32,2,opt,name=weight,proto3,oneof" json:"weight,omitempty"` // defaults to 1.0 +} + +func (x *FineTuningParameters) Reset() { + *x = FineTuningParameters{} + if protoimpl.UnsafeEnabled { + mi := &file_stability_api_platform_generation_v1_generation_proto_msgTypes[17] + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + ms.StoreMessageInfo(mi) + } +} + +func (x *FineTuningParameters) String() string { + return protoimpl.X.MessageStringOf(x) +} + +func (*FineTuningParameters) ProtoMessage() {} + +func (x *FineTuningParameters) ProtoReflect() protoreflect.Message { + mi := &file_stability_api_platform_generation_v1_generation_proto_msgTypes[17] + if protoimpl.UnsafeEnabled && x != nil { + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + if ms.LoadMessageInfo() == nil { + ms.StoreMessageInfo(mi) + } + return ms + } + return mi.MessageOf(x) +} + +// Deprecated: Use FineTuningParameters.ProtoReflect.Descriptor instead. +func (*FineTuningParameters) Descriptor() ([]byte, []int) { + return file_stability_api_platform_generation_v1_generation_proto_rawDescGZIP(), []int{17} +} + +func (x *FineTuningParameters) GetModelId() string { + if x != nil { + return x.ModelId + } + return "" +} + +func (x *FineTuningParameters) GetWeight() float32 { + if x != nil && x.Weight != nil { + return *x.Weight + } + return 0 +} + +type ImageParameters struct { + state protoimpl.MessageState + sizeCache protoimpl.SizeCache + unknownFields protoimpl.UnknownFields + + Height *uint64 `protobuf:"varint,1,opt,name=height,proto3,oneof" json:"height,omitempty"` + Width *uint64 `protobuf:"varint,2,opt,name=width,proto3,oneof" json:"width,omitempty"` + Seed []uint32 `protobuf:"varint,3,rep,packed,name=seed,proto3" json:"seed,omitempty"` + Samples *uint64 `protobuf:"varint,4,opt,name=samples,proto3,oneof" json:"samples,omitempty"` + Steps *uint64 `protobuf:"varint,5,opt,name=steps,proto3,oneof" json:"steps,omitempty"` + Transform *TransformType `protobuf:"bytes,6,opt,name=transform,proto3,oneof" json:"transform,omitempty"` + Parameters []*StepParameter `protobuf:"bytes,7,rep,name=parameters,proto3" json:"parameters,omitempty"` + MaskedAreaInit *MaskedAreaInit `protobuf:"varint,8,opt,name=masked_area_init,json=maskedAreaInit,proto3,enum=stabilityai.platformapis.generation.v1.MaskedAreaInit,oneof" json:"masked_area_init,omitempty"` // defaults to MASKED_AREA_INIT_ZERO + WeightMethod *WeightMethod `protobuf:"varint,9,opt,name=weight_method,json=weightMethod,proto3,enum=stabilityai.platformapis.generation.v1.WeightMethod,oneof" json:"weight_method,omitempty"` //defaults to TEXT_ENCODER + Quantize *bool `protobuf:"varint,10,opt,name=quantize,proto3,oneof" json:"quantize,omitempty"` //defaults to true + Adapter *T2IAdapterParameter `protobuf:"bytes,12,opt,name=adapter,proto3,oneof" json:"adapter,omitempty"` + FineTuningParameters []*FineTuningParameters `protobuf:"bytes,13,rep,name=fine_tuning_parameters,json=fineTuningParameters,proto3" json:"fine_tuning_parameters,omitempty"` + ContentCredentialsParameters *ContentCredentialsParameters `protobuf:"bytes,14,opt,name=content_credentials_parameters,json=contentCredentialsParameters,proto3,oneof" json:"content_credentials_parameters,omitempty"` // Set field to have image signed by C2PA +} + +func (x *ImageParameters) Reset() { + *x = ImageParameters{} + if protoimpl.UnsafeEnabled { + mi := &file_stability_api_platform_generation_v1_generation_proto_msgTypes[18] + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + ms.StoreMessageInfo(mi) + } +} + +func (x *ImageParameters) String() string { + return protoimpl.X.MessageStringOf(x) +} + +func (*ImageParameters) ProtoMessage() {} + +func (x *ImageParameters) ProtoReflect() protoreflect.Message { + mi := &file_stability_api_platform_generation_v1_generation_proto_msgTypes[18] + if protoimpl.UnsafeEnabled && x != nil { + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + if ms.LoadMessageInfo() == nil { + ms.StoreMessageInfo(mi) + } + return ms + } + return mi.MessageOf(x) +} + +// Deprecated: Use ImageParameters.ProtoReflect.Descriptor instead. +func (*ImageParameters) Descriptor() ([]byte, []int) { + return file_stability_api_platform_generation_v1_generation_proto_rawDescGZIP(), []int{18} +} + +func (x *ImageParameters) GetHeight() uint64 { + if x != nil && x.Height != nil { + return *x.Height + } + return 0 +} + +func (x *ImageParameters) GetWidth() uint64 { + if x != nil && x.Width != nil { + return *x.Width + } + return 0 +} + +func (x *ImageParameters) GetSeed() []uint32 { + if x != nil { + return x.Seed + } + return nil +} + +func (x *ImageParameters) GetSamples() uint64 { + if x != nil && x.Samples != nil { + return *x.Samples + } + return 0 +} + +func (x *ImageParameters) GetSteps() uint64 { + if x != nil && x.Steps != nil { + return *x.Steps + } + return 0 +} + +func (x *ImageParameters) GetTransform() *TransformType { + if x != nil { + return x.Transform + } + return nil +} + +func (x *ImageParameters) GetParameters() []*StepParameter { + if x != nil { + return x.Parameters + } + return nil +} + +func (x *ImageParameters) GetMaskedAreaInit() MaskedAreaInit { + if x != nil && x.MaskedAreaInit != nil { + return *x.MaskedAreaInit + } + return MaskedAreaInit_MASKED_AREA_INIT_ZERO +} + +func (x *ImageParameters) GetWeightMethod() WeightMethod { + if x != nil && x.WeightMethod != nil { + return *x.WeightMethod + } + return WeightMethod_TEXT_ENCODER +} + +func (x *ImageParameters) GetQuantize() bool { + if x != nil && x.Quantize != nil { + return *x.Quantize + } + return false +} + +func (x *ImageParameters) GetAdapter() *T2IAdapterParameter { + if x != nil { + return x.Adapter + } + return nil +} + +func (x *ImageParameters) GetFineTuningParameters() []*FineTuningParameters { + if x != nil { + return x.FineTuningParameters + } + return nil +} + +func (x *ImageParameters) GetContentCredentialsParameters() *ContentCredentialsParameters { + if x != nil { + return x.ContentCredentialsParameters + } + return nil +} + +type ClassifierConcept struct { + state protoimpl.MessageState + sizeCache protoimpl.SizeCache + unknownFields protoimpl.UnknownFields + + Concept string `protobuf:"bytes,1,opt,name=concept,proto3" json:"concept,omitempty"` + Threshold *float32 `protobuf:"fixed32,2,opt,name=threshold,proto3,oneof" json:"threshold,omitempty"` +} + +func (x *ClassifierConcept) Reset() { + *x = ClassifierConcept{} + if protoimpl.UnsafeEnabled { + mi := &file_stability_api_platform_generation_v1_generation_proto_msgTypes[19] + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + ms.StoreMessageInfo(mi) + } +} + +func (x *ClassifierConcept) String() string { + return protoimpl.X.MessageStringOf(x) +} + +func (*ClassifierConcept) ProtoMessage() {} + +func (x *ClassifierConcept) ProtoReflect() protoreflect.Message { + mi := &file_stability_api_platform_generation_v1_generation_proto_msgTypes[19] + if protoimpl.UnsafeEnabled && x != nil { + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + if ms.LoadMessageInfo() == nil { + ms.StoreMessageInfo(mi) + } + return ms + } + return mi.MessageOf(x) +} + +// Deprecated: Use ClassifierConcept.ProtoReflect.Descriptor instead. +func (*ClassifierConcept) Descriptor() ([]byte, []int) { + return file_stability_api_platform_generation_v1_generation_proto_rawDescGZIP(), []int{19} +} + +func (x *ClassifierConcept) GetConcept() string { + if x != nil { + return x.Concept + } + return "" +} + +func (x *ClassifierConcept) GetThreshold() float32 { + if x != nil && x.Threshold != nil { + return *x.Threshold + } + return 0 +} + +type ClassifierCategory struct { + state protoimpl.MessageState + sizeCache protoimpl.SizeCache + unknownFields protoimpl.UnknownFields + + Name string `protobuf:"bytes,1,opt,name=name,proto3" json:"name,omitempty"` + Concepts []*ClassifierConcept `protobuf:"bytes,2,rep,name=concepts,proto3" json:"concepts,omitempty"` + Adjustment *float32 `protobuf:"fixed32,3,opt,name=adjustment,proto3,oneof" json:"adjustment,omitempty"` + Action *Action `protobuf:"varint,4,opt,name=action,proto3,enum=stabilityai.platformapis.generation.v1.Action,oneof" json:"action,omitempty"` + ClassifierMode *ClassifierMode `protobuf:"varint,5,opt,name=classifier_mode,json=classifierMode,proto3,enum=stabilityai.platformapis.generation.v1.ClassifierMode,oneof" json:"classifier_mode,omitempty"` +} + +func (x *ClassifierCategory) Reset() { + *x = ClassifierCategory{} + if protoimpl.UnsafeEnabled { + mi := &file_stability_api_platform_generation_v1_generation_proto_msgTypes[20] + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + ms.StoreMessageInfo(mi) + } +} + +func (x *ClassifierCategory) String() string { + return protoimpl.X.MessageStringOf(x) +} + +func (*ClassifierCategory) ProtoMessage() {} + +func (x *ClassifierCategory) ProtoReflect() protoreflect.Message { + mi := &file_stability_api_platform_generation_v1_generation_proto_msgTypes[20] + if protoimpl.UnsafeEnabled && x != nil { + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + if ms.LoadMessageInfo() == nil { + ms.StoreMessageInfo(mi) + } + return ms + } + return mi.MessageOf(x) +} + +// Deprecated: Use ClassifierCategory.ProtoReflect.Descriptor instead. +func (*ClassifierCategory) Descriptor() ([]byte, []int) { + return file_stability_api_platform_generation_v1_generation_proto_rawDescGZIP(), []int{20} +} + +func (x *ClassifierCategory) GetName() string { + if x != nil { + return x.Name + } + return "" +} + +func (x *ClassifierCategory) GetConcepts() []*ClassifierConcept { + if x != nil { + return x.Concepts + } + return nil +} + +func (x *ClassifierCategory) GetAdjustment() float32 { + if x != nil && x.Adjustment != nil { + return *x.Adjustment + } + return 0 +} + +func (x *ClassifierCategory) GetAction() Action { + if x != nil && x.Action != nil { + return *x.Action + } + return Action_ACTION_PASSTHROUGH +} + +func (x *ClassifierCategory) GetClassifierMode() ClassifierMode { + if x != nil && x.ClassifierMode != nil { + return *x.ClassifierMode + } + return ClassifierMode_CLSFR_MODE_ZEROSHOT +} + +type ClassifierParameters struct { + state protoimpl.MessageState + sizeCache protoimpl.SizeCache + unknownFields protoimpl.UnknownFields + + Categories []*ClassifierCategory `protobuf:"bytes,1,rep,name=categories,proto3" json:"categories,omitempty"` + Exceeds []*ClassifierCategory `protobuf:"bytes,2,rep,name=exceeds,proto3" json:"exceeds,omitempty"` + RealizedAction *Action `protobuf:"varint,3,opt,name=realized_action,json=realizedAction,proto3,enum=stabilityai.platformapis.generation.v1.Action,oneof" json:"realized_action,omitempty"` +} + +func (x *ClassifierParameters) Reset() { + *x = ClassifierParameters{} + if protoimpl.UnsafeEnabled { + mi := &file_stability_api_platform_generation_v1_generation_proto_msgTypes[21] + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + ms.StoreMessageInfo(mi) + } +} + +func (x *ClassifierParameters) String() string { + return protoimpl.X.MessageStringOf(x) +} + +func (*ClassifierParameters) ProtoMessage() {} + +func (x *ClassifierParameters) ProtoReflect() protoreflect.Message { + mi := &file_stability_api_platform_generation_v1_generation_proto_msgTypes[21] + if protoimpl.UnsafeEnabled && x != nil { + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + if ms.LoadMessageInfo() == nil { + ms.StoreMessageInfo(mi) + } + return ms + } + return mi.MessageOf(x) +} + +// Deprecated: Use ClassifierParameters.ProtoReflect.Descriptor instead. +func (*ClassifierParameters) Descriptor() ([]byte, []int) { + return file_stability_api_platform_generation_v1_generation_proto_rawDescGZIP(), []int{21} +} + +func (x *ClassifierParameters) GetCategories() []*ClassifierCategory { + if x != nil { + return x.Categories + } + return nil +} + +func (x *ClassifierParameters) GetExceeds() []*ClassifierCategory { + if x != nil { + return x.Exceeds + } + return nil +} + +func (x *ClassifierParameters) GetRealizedAction() Action { + if x != nil && x.RealizedAction != nil { + return *x.RealizedAction + } + return Action_ACTION_PASSTHROUGH +} + +// Interpolation between two images applied at specified blend ratios +type InterpolateParameters struct { + state protoimpl.MessageState + sizeCache protoimpl.SizeCache + unknownFields protoimpl.UnknownFields + + Ratios []float32 `protobuf:"fixed32,1,rep,packed,name=ratios,proto3" json:"ratios,omitempty"` + Mode *InterpolateMode `protobuf:"varint,2,opt,name=mode,proto3,enum=stabilityai.platformapis.generation.v1.InterpolateMode,oneof" json:"mode,omitempty"` +} + +func (x *InterpolateParameters) Reset() { + *x = InterpolateParameters{} + if protoimpl.UnsafeEnabled { + mi := &file_stability_api_platform_generation_v1_generation_proto_msgTypes[22] + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + ms.StoreMessageInfo(mi) + } +} + +func (x *InterpolateParameters) String() string { + return protoimpl.X.MessageStringOf(x) +} + +func (*InterpolateParameters) ProtoMessage() {} + +func (x *InterpolateParameters) ProtoReflect() protoreflect.Message { + mi := &file_stability_api_platform_generation_v1_generation_proto_msgTypes[22] + if protoimpl.UnsafeEnabled && x != nil { + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + if ms.LoadMessageInfo() == nil { + ms.StoreMessageInfo(mi) + } + return ms + } + return mi.MessageOf(x) +} + +// Deprecated: Use InterpolateParameters.ProtoReflect.Descriptor instead. +func (*InterpolateParameters) Descriptor() ([]byte, []int) { + return file_stability_api_platform_generation_v1_generation_proto_rawDescGZIP(), []int{22} +} + +func (x *InterpolateParameters) GetRatios() []float32 { + if x != nil { + return x.Ratios + } + return nil +} + +func (x *InterpolateParameters) GetMode() InterpolateMode { + if x != nil && x.Mode != nil { + return *x.Mode + } + return InterpolateMode_INTERPOLATE_LINEAR +} + +type TransformColorAdjust struct { + state protoimpl.MessageState + sizeCache protoimpl.SizeCache + unknownFields protoimpl.UnknownFields + + Brightness *float32 `protobuf:"fixed32,1,opt,name=brightness,proto3,oneof" json:"brightness,omitempty"` // scale pixel intensities, 1.0 is no change + Contrast *float32 `protobuf:"fixed32,2,opt,name=contrast,proto3,oneof" json:"contrast,omitempty"` // contrast adjustment, 1.0 is no change + Hue *float32 `protobuf:"fixed32,3,opt,name=hue,proto3,oneof" json:"hue,omitempty"` // -180 to 180 hue adjustment, 0.0 is no change + Saturation *float32 `protobuf:"fixed32,4,opt,name=saturation,proto3,oneof" json:"saturation,omitempty"` // 0.0 to 2.0 saturation scale, 1.0 is no change + Lightness *float32 `protobuf:"fixed32,5,opt,name=lightness,proto3,oneof" json:"lightness,omitempty"` // -1.0 to 1.0 lightness adjustment, 0.0 is no change + MatchImage *Artifact `protobuf:"bytes,6,opt,name=match_image,json=matchImage,proto3,oneof" json:"match_image,omitempty"` // image to color match + MatchMode *ColorMatchMode `protobuf:"varint,7,opt,name=match_mode,json=matchMode,proto3,enum=stabilityai.platformapis.generation.v1.ColorMatchMode,oneof" json:"match_mode,omitempty"` // color match mode to use + NoiseAmount *float32 `protobuf:"fixed32,8,opt,name=noise_amount,json=noiseAmount,proto3,oneof" json:"noise_amount,omitempty"` // amount of gaussian noise to add + NoiseSeed *uint32 `protobuf:"varint,9,opt,name=noise_seed,json=noiseSeed,proto3,oneof" json:"noise_seed,omitempty"` // random seed for noise +} + +func (x *TransformColorAdjust) Reset() { + *x = TransformColorAdjust{} + if protoimpl.UnsafeEnabled { + mi := &file_stability_api_platform_generation_v1_generation_proto_msgTypes[23] + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + ms.StoreMessageInfo(mi) + } +} + +func (x *TransformColorAdjust) String() string { + return protoimpl.X.MessageStringOf(x) +} + +func (*TransformColorAdjust) ProtoMessage() {} + +func (x *TransformColorAdjust) ProtoReflect() protoreflect.Message { + mi := &file_stability_api_platform_generation_v1_generation_proto_msgTypes[23] + if protoimpl.UnsafeEnabled && x != nil { + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + if ms.LoadMessageInfo() == nil { + ms.StoreMessageInfo(mi) + } + return ms + } + return mi.MessageOf(x) +} + +// Deprecated: Use TransformColorAdjust.ProtoReflect.Descriptor instead. +func (*TransformColorAdjust) Descriptor() ([]byte, []int) { + return file_stability_api_platform_generation_v1_generation_proto_rawDescGZIP(), []int{23} +} + +func (x *TransformColorAdjust) GetBrightness() float32 { + if x != nil && x.Brightness != nil { + return *x.Brightness + } + return 0 +} + +func (x *TransformColorAdjust) GetContrast() float32 { + if x != nil && x.Contrast != nil { + return *x.Contrast + } + return 0 +} + +func (x *TransformColorAdjust) GetHue() float32 { + if x != nil && x.Hue != nil { + return *x.Hue + } + return 0 +} + +func (x *TransformColorAdjust) GetSaturation() float32 { + if x != nil && x.Saturation != nil { + return *x.Saturation + } + return 0 +} + +func (x *TransformColorAdjust) GetLightness() float32 { + if x != nil && x.Lightness != nil { + return *x.Lightness + } + return 0 +} + +func (x *TransformColorAdjust) GetMatchImage() *Artifact { + if x != nil { + return x.MatchImage + } + return nil +} + +func (x *TransformColorAdjust) GetMatchMode() ColorMatchMode { + if x != nil && x.MatchMode != nil { + return *x.MatchMode + } + return ColorMatchMode_COLOR_MATCH_HSV +} + +func (x *TransformColorAdjust) GetNoiseAmount() float32 { + if x != nil && x.NoiseAmount != nil { + return *x.NoiseAmount + } + return 0 +} + +func (x *TransformColorAdjust) GetNoiseSeed() uint32 { + if x != nil && x.NoiseSeed != nil { + return *x.NoiseSeed + } + return 0 +} + +type TransformDepthCalc struct { + state protoimpl.MessageState + sizeCache protoimpl.SizeCache + unknownFields protoimpl.UnknownFields + + BlendWeight *float32 `protobuf:"fixed32,1,opt,name=blend_weight,json=blendWeight,proto3,oneof" json:"blend_weight,omitempty"` // blend factor between AdaBins (0.0) and MiDaS (1.0) + BlurRadius *uint32 `protobuf:"varint,2,opt,name=blur_radius,json=blurRadius,proto3,oneof" json:"blur_radius,omitempty"` // defaults to 0.0 + Reverse *bool `protobuf:"varint,3,opt,name=reverse,proto3,oneof" json:"reverse,omitempty"` // make near depths have higher values +} + +func (x *TransformDepthCalc) Reset() { + *x = TransformDepthCalc{} + if protoimpl.UnsafeEnabled { + mi := &file_stability_api_platform_generation_v1_generation_proto_msgTypes[24] + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + ms.StoreMessageInfo(mi) + } +} + +func (x *TransformDepthCalc) String() string { + return protoimpl.X.MessageStringOf(x) +} + +func (*TransformDepthCalc) ProtoMessage() {} + +func (x *TransformDepthCalc) ProtoReflect() protoreflect.Message { + mi := &file_stability_api_platform_generation_v1_generation_proto_msgTypes[24] + if protoimpl.UnsafeEnabled && x != nil { + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + if ms.LoadMessageInfo() == nil { + ms.StoreMessageInfo(mi) + } + return ms + } + return mi.MessageOf(x) +} + +// Deprecated: Use TransformDepthCalc.ProtoReflect.Descriptor instead. +func (*TransformDepthCalc) Descriptor() ([]byte, []int) { + return file_stability_api_platform_generation_v1_generation_proto_rawDescGZIP(), []int{24} +} + +func (x *TransformDepthCalc) GetBlendWeight() float32 { + if x != nil && x.BlendWeight != nil { + return *x.BlendWeight + } + return 0 +} + +func (x *TransformDepthCalc) GetBlurRadius() uint32 { + if x != nil && x.BlurRadius != nil { + return *x.BlurRadius + } + return 0 +} + +func (x *TransformDepthCalc) GetReverse() bool { + if x != nil && x.Reverse != nil { + return *x.Reverse + } + return false +} + +type TransformMatrix struct { + state protoimpl.MessageState + sizeCache protoimpl.SizeCache + unknownFields protoimpl.UnknownFields + + // Column-major 3x3 or 4x4 perspective matrix + // [sx, 10, 20, tx] [x] + // [01, sy, 21, ty] . [y] + // [02, 12, sz, tz] [z] + // [03, 13, 23, 33] [1] + Data []float32 `protobuf:"fixed32,1,rep,packed,name=data,proto3" json:"data,omitempty"` +} + +func (x *TransformMatrix) Reset() { + *x = TransformMatrix{} + if protoimpl.UnsafeEnabled { + mi := &file_stability_api_platform_generation_v1_generation_proto_msgTypes[25] + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + ms.StoreMessageInfo(mi) + } +} + +func (x *TransformMatrix) String() string { + return protoimpl.X.MessageStringOf(x) +} + +func (*TransformMatrix) ProtoMessage() {} + +func (x *TransformMatrix) ProtoReflect() protoreflect.Message { + mi := &file_stability_api_platform_generation_v1_generation_proto_msgTypes[25] + if protoimpl.UnsafeEnabled && x != nil { + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + if ms.LoadMessageInfo() == nil { + ms.StoreMessageInfo(mi) + } + return ms + } + return mi.MessageOf(x) +} + +// Deprecated: Use TransformMatrix.ProtoReflect.Descriptor instead. +func (*TransformMatrix) Descriptor() ([]byte, []int) { + return file_stability_api_platform_generation_v1_generation_proto_rawDescGZIP(), []int{25} +} + +func (x *TransformMatrix) GetData() []float32 { + if x != nil { + return x.Data + } + return nil +} + +type TransformResample struct { + state protoimpl.MessageState + sizeCache protoimpl.SizeCache + unknownFields protoimpl.UnknownFields + + BorderMode BorderMode `protobuf:"varint,1,opt,name=border_mode,json=borderMode,proto3,enum=stabilityai.platformapis.generation.v1.BorderMode" json:"border_mode,omitempty"` // extrapolation of border pixels + Transform *TransformMatrix `protobuf:"bytes,2,opt,name=transform,proto3" json:"transform,omitempty"` // 3x3 or 4x4 matrix + PrevTransform *TransformMatrix `protobuf:"bytes,3,opt,name=prev_transform,json=prevTransform,proto3,oneof" json:"prev_transform,omitempty"` // 3x3 or 4x4 matrix, defaults to identity + DepthWarp *float32 `protobuf:"fixed32,4,opt,name=depth_warp,json=depthWarp,proto3,oneof" json:"depth_warp,omitempty"` // depth warp factor, defaults to 1.0 + ExportMask *bool `protobuf:"varint,5,opt,name=export_mask,json=exportMask,proto3,oneof" json:"export_mask,omitempty"` // return inpaint mask +} + +func (x *TransformResample) Reset() { + *x = TransformResample{} + if protoimpl.UnsafeEnabled { + mi := &file_stability_api_platform_generation_v1_generation_proto_msgTypes[26] + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + ms.StoreMessageInfo(mi) + } +} + +func (x *TransformResample) String() string { + return protoimpl.X.MessageStringOf(x) +} + +func (*TransformResample) ProtoMessage() {} + +func (x *TransformResample) ProtoReflect() protoreflect.Message { + mi := &file_stability_api_platform_generation_v1_generation_proto_msgTypes[26] + if protoimpl.UnsafeEnabled && x != nil { + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + if ms.LoadMessageInfo() == nil { + ms.StoreMessageInfo(mi) + } + return ms + } + return mi.MessageOf(x) +} + +// Deprecated: Use TransformResample.ProtoReflect.Descriptor instead. +func (*TransformResample) Descriptor() ([]byte, []int) { + return file_stability_api_platform_generation_v1_generation_proto_rawDescGZIP(), []int{26} +} + +func (x *TransformResample) GetBorderMode() BorderMode { + if x != nil { + return x.BorderMode + } + return BorderMode_BORDER_REFLECT +} + +func (x *TransformResample) GetTransform() *TransformMatrix { + if x != nil { + return x.Transform + } + return nil +} + +func (x *TransformResample) GetPrevTransform() *TransformMatrix { + if x != nil { + return x.PrevTransform + } + return nil +} + +func (x *TransformResample) GetDepthWarp() float32 { + if x != nil && x.DepthWarp != nil { + return *x.DepthWarp + } + return 0 +} + +func (x *TransformResample) GetExportMask() bool { + if x != nil && x.ExportMask != nil { + return *x.ExportMask + } + return false +} + +type CameraParameters struct { + state protoimpl.MessageState + sizeCache protoimpl.SizeCache + unknownFields protoimpl.UnknownFields + + CameraType CameraType `protobuf:"varint,1,opt,name=camera_type,json=cameraType,proto3,enum=stabilityai.platformapis.generation.v1.CameraType" json:"camera_type,omitempty"` + NearPlane float32 `protobuf:"fixed32,2,opt,name=near_plane,json=nearPlane,proto3" json:"near_plane,omitempty"` // Nearest plane depth of a rendered frustum + FarPlane float32 `protobuf:"fixed32,3,opt,name=far_plane,json=farPlane,proto3" json:"far_plane,omitempty"` // Farthest plane depth of a rendered frustum + Fov *float32 `protobuf:"fixed32,4,opt,name=fov,proto3,oneof" json:"fov,omitempty"` // Camera field of view (in degrees). Must be set for CAMERA_PERSPECTIVE type. +} + +func (x *CameraParameters) Reset() { + *x = CameraParameters{} + if protoimpl.UnsafeEnabled { + mi := &file_stability_api_platform_generation_v1_generation_proto_msgTypes[27] + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + ms.StoreMessageInfo(mi) + } +} + +func (x *CameraParameters) String() string { + return protoimpl.X.MessageStringOf(x) +} + +func (*CameraParameters) ProtoMessage() {} + +func (x *CameraParameters) ProtoReflect() protoreflect.Message { + mi := &file_stability_api_platform_generation_v1_generation_proto_msgTypes[27] + if protoimpl.UnsafeEnabled && x != nil { + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + if ms.LoadMessageInfo() == nil { + ms.StoreMessageInfo(mi) + } + return ms + } + return mi.MessageOf(x) +} + +// Deprecated: Use CameraParameters.ProtoReflect.Descriptor instead. +func (*CameraParameters) Descriptor() ([]byte, []int) { + return file_stability_api_platform_generation_v1_generation_proto_rawDescGZIP(), []int{27} +} + +func (x *CameraParameters) GetCameraType() CameraType { + if x != nil { + return x.CameraType + } + return CameraType_CAMERA_PERSPECTIVE +} + +func (x *CameraParameters) GetNearPlane() float32 { + if x != nil { + return x.NearPlane + } + return 0 +} + +func (x *CameraParameters) GetFarPlane() float32 { + if x != nil { + return x.FarPlane + } + return 0 +} + +func (x *CameraParameters) GetFov() float32 { + if x != nil && x.Fov != nil { + return *x.Fov + } + return 0 +} + +type TransformCameraPose struct { + state protoimpl.MessageState + sizeCache protoimpl.SizeCache + unknownFields protoimpl.UnknownFields + + WorldToViewMatrix *TransformMatrix `protobuf:"bytes,1,opt,name=world_to_view_matrix,json=worldToViewMatrix,proto3" json:"world_to_view_matrix,omitempty"` // 4x4 transform matrix for the next frame + CameraParameters *CameraParameters `protobuf:"bytes,2,opt,name=camera_parameters,json=cameraParameters,proto3" json:"camera_parameters,omitempty"` + DoPrefill bool `protobuf:"varint,5,opt,name=do_prefill,json=doPrefill,proto3" json:"do_prefill,omitempty"` // Prefill masked areas with values matching the colors around the area + RenderMode RenderMode `protobuf:"varint,8,opt,name=render_mode,json=renderMode,proto3,enum=stabilityai.platformapis.generation.v1.RenderMode" json:"render_mode,omitempty"` // Both image and mask will be rendered using this method. +} + +func (x *TransformCameraPose) Reset() { + *x = TransformCameraPose{} + if protoimpl.UnsafeEnabled { + mi := &file_stability_api_platform_generation_v1_generation_proto_msgTypes[28] + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + ms.StoreMessageInfo(mi) + } +} + +func (x *TransformCameraPose) String() string { + return protoimpl.X.MessageStringOf(x) +} + +func (*TransformCameraPose) ProtoMessage() {} + +func (x *TransformCameraPose) ProtoReflect() protoreflect.Message { + mi := &file_stability_api_platform_generation_v1_generation_proto_msgTypes[28] + if protoimpl.UnsafeEnabled && x != nil { + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + if ms.LoadMessageInfo() == nil { + ms.StoreMessageInfo(mi) + } + return ms + } + return mi.MessageOf(x) +} + +// Deprecated: Use TransformCameraPose.ProtoReflect.Descriptor instead. +func (*TransformCameraPose) Descriptor() ([]byte, []int) { + return file_stability_api_platform_generation_v1_generation_proto_rawDescGZIP(), []int{28} +} + +func (x *TransformCameraPose) GetWorldToViewMatrix() *TransformMatrix { + if x != nil { + return x.WorldToViewMatrix + } + return nil +} + +func (x *TransformCameraPose) GetCameraParameters() *CameraParameters { + if x != nil { + return x.CameraParameters + } + return nil +} + +func (x *TransformCameraPose) GetDoPrefill() bool { + if x != nil { + return x.DoPrefill + } + return false +} + +func (x *TransformCameraPose) GetRenderMode() RenderMode { + if x != nil { + return x.RenderMode + } + return RenderMode_RENDER_MESH +} + +type TransformParameters struct { + state protoimpl.MessageState + sizeCache protoimpl.SizeCache + unknownFields protoimpl.UnknownFields + + // Types that are assignable to Transform: + // + // *TransformParameters_ColorAdjust + // *TransformParameters_DepthCalc + // *TransformParameters_Resample + // *TransformParameters_CameraPose + Transform isTransformParameters_Transform `protobuf_oneof:"transform"` +} + +func (x *TransformParameters) Reset() { + *x = TransformParameters{} + if protoimpl.UnsafeEnabled { + mi := &file_stability_api_platform_generation_v1_generation_proto_msgTypes[29] + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + ms.StoreMessageInfo(mi) + } +} + +func (x *TransformParameters) String() string { + return protoimpl.X.MessageStringOf(x) +} + +func (*TransformParameters) ProtoMessage() {} + +func (x *TransformParameters) ProtoReflect() protoreflect.Message { + mi := &file_stability_api_platform_generation_v1_generation_proto_msgTypes[29] + if protoimpl.UnsafeEnabled && x != nil { + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + if ms.LoadMessageInfo() == nil { + ms.StoreMessageInfo(mi) + } + return ms + } + return mi.MessageOf(x) +} + +// Deprecated: Use TransformParameters.ProtoReflect.Descriptor instead. +func (*TransformParameters) Descriptor() ([]byte, []int) { + return file_stability_api_platform_generation_v1_generation_proto_rawDescGZIP(), []int{29} +} + +func (m *TransformParameters) GetTransform() isTransformParameters_Transform { + if m != nil { + return m.Transform + } + return nil +} + +func (x *TransformParameters) GetColorAdjust() *TransformColorAdjust { + if x, ok := x.GetTransform().(*TransformParameters_ColorAdjust); ok { + return x.ColorAdjust + } + return nil +} + +func (x *TransformParameters) GetDepthCalc() *TransformDepthCalc { + if x, ok := x.GetTransform().(*TransformParameters_DepthCalc); ok { + return x.DepthCalc + } + return nil +} + +func (x *TransformParameters) GetResample() *TransformResample { + if x, ok := x.GetTransform().(*TransformParameters_Resample); ok { + return x.Resample + } + return nil +} + +func (x *TransformParameters) GetCameraPose() *TransformCameraPose { + if x, ok := x.GetTransform().(*TransformParameters_CameraPose); ok { + return x.CameraPose + } + return nil +} + +type isTransformParameters_Transform interface { + isTransformParameters_Transform() +} + +type TransformParameters_ColorAdjust struct { + ColorAdjust *TransformColorAdjust `protobuf:"bytes,2,opt,name=color_adjust,json=colorAdjust,proto3,oneof"` +} + +type TransformParameters_DepthCalc struct { + DepthCalc *TransformDepthCalc `protobuf:"bytes,4,opt,name=depth_calc,json=depthCalc,proto3,oneof"` +} + +type TransformParameters_Resample struct { + Resample *TransformResample `protobuf:"bytes,5,opt,name=resample,proto3,oneof"` +} + +type TransformParameters_CameraPose struct { + CameraPose *TransformCameraPose `protobuf:"bytes,6,opt,name=camera_pose,json=cameraPose,proto3,oneof"` +} + +func (*TransformParameters_ColorAdjust) isTransformParameters_Transform() {} + +func (*TransformParameters_DepthCalc) isTransformParameters_Transform() {} + +func (*TransformParameters_Resample) isTransformParameters_Transform() {} + +func (*TransformParameters_CameraPose) isTransformParameters_Transform() {} + +type AssetParameters struct { + state protoimpl.MessageState + sizeCache protoimpl.SizeCache + unknownFields protoimpl.UnknownFields + + Action AssetAction `protobuf:"varint,1,opt,name=action,proto3,enum=stabilityai.platformapis.generation.v1.AssetAction" json:"action,omitempty"` + ProjectId string `protobuf:"bytes,2,opt,name=project_id,json=projectId,proto3" json:"project_id,omitempty"` + Use AssetUse `protobuf:"varint,3,opt,name=use,proto3,enum=stabilityai.platformapis.generation.v1.AssetUse" json:"use,omitempty"` +} + +func (x *AssetParameters) Reset() { + *x = AssetParameters{} + if protoimpl.UnsafeEnabled { + mi := &file_stability_api_platform_generation_v1_generation_proto_msgTypes[30] + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + ms.StoreMessageInfo(mi) + } +} + +func (x *AssetParameters) String() string { + return protoimpl.X.MessageStringOf(x) +} + +func (*AssetParameters) ProtoMessage() {} + +func (x *AssetParameters) ProtoReflect() protoreflect.Message { + mi := &file_stability_api_platform_generation_v1_generation_proto_msgTypes[30] + if protoimpl.UnsafeEnabled && x != nil { + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + if ms.LoadMessageInfo() == nil { + ms.StoreMessageInfo(mi) + } + return ms + } + return mi.MessageOf(x) +} + +// Deprecated: Use AssetParameters.ProtoReflect.Descriptor instead. +func (*AssetParameters) Descriptor() ([]byte, []int) { + return file_stability_api_platform_generation_v1_generation_proto_rawDescGZIP(), []int{30} +} + +func (x *AssetParameters) GetAction() AssetAction { + if x != nil { + return x.Action + } + return AssetAction_ASSET_PUT +} + +func (x *AssetParameters) GetProjectId() string { + if x != nil { + return x.ProjectId + } + return "" +} + +func (x *AssetParameters) GetUse() AssetUse { + if x != nil { + return x.Use + } + return AssetUse_ASSET_USE_UNDEFINED +} + +// AnswerMeta is a set of metadata about an answer, usually the operating +// environment. +type AnswerMeta struct { + state protoimpl.MessageState + sizeCache protoimpl.SizeCache + unknownFields protoimpl.UnknownFields + + GpuId *string `protobuf:"bytes,1,opt,name=gpu_id,json=gpuId,proto3,oneof" json:"gpu_id,omitempty"` + CpuId *string `protobuf:"bytes,2,opt,name=cpu_id,json=cpuId,proto3,oneof" json:"cpu_id,omitempty"` + NodeId *string `protobuf:"bytes,3,opt,name=node_id,json=nodeId,proto3,oneof" json:"node_id,omitempty"` + EngineId *string `protobuf:"bytes,4,opt,name=engine_id,json=engineId,proto3,oneof" json:"engine_id,omitempty"` +} + +func (x *AnswerMeta) Reset() { + *x = AnswerMeta{} + if protoimpl.UnsafeEnabled { + mi := &file_stability_api_platform_generation_v1_generation_proto_msgTypes[31] + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + ms.StoreMessageInfo(mi) + } +} + +func (x *AnswerMeta) String() string { + return protoimpl.X.MessageStringOf(x) +} + +func (*AnswerMeta) ProtoMessage() {} + +func (x *AnswerMeta) ProtoReflect() protoreflect.Message { + mi := &file_stability_api_platform_generation_v1_generation_proto_msgTypes[31] + if protoimpl.UnsafeEnabled && x != nil { + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + if ms.LoadMessageInfo() == nil { + ms.StoreMessageInfo(mi) + } + return ms + } + return mi.MessageOf(x) +} + +// Deprecated: Use AnswerMeta.ProtoReflect.Descriptor instead. +func (*AnswerMeta) Descriptor() ([]byte, []int) { + return file_stability_api_platform_generation_v1_generation_proto_rawDescGZIP(), []int{31} +} + +func (x *AnswerMeta) GetGpuId() string { + if x != nil && x.GpuId != nil { + return *x.GpuId + } + return "" +} + +func (x *AnswerMeta) GetCpuId() string { + if x != nil && x.CpuId != nil { + return *x.CpuId + } + return "" +} + +func (x *AnswerMeta) GetNodeId() string { + if x != nil && x.NodeId != nil { + return *x.NodeId + } + return "" +} + +func (x *AnswerMeta) GetEngineId() string { + if x != nil && x.EngineId != nil { + return *x.EngineId + } + return "" +} + +// An Answer is a response to a Request. It is a set of Artifacts, which can be +// of any type and forwarded to the client or the next stage. +type Answer struct { + state protoimpl.MessageState + sizeCache protoimpl.SizeCache + unknownFields protoimpl.UnknownFields + + AnswerId string `protobuf:"bytes,1,opt,name=answer_id,json=answerId,proto3" json:"answer_id,omitempty"` + RequestId string `protobuf:"bytes,2,opt,name=request_id,json=requestId,proto3" json:"request_id,omitempty"` + Received uint64 `protobuf:"varint,3,opt,name=received,proto3" json:"received,omitempty"` + Created uint64 `protobuf:"varint,4,opt,name=created,proto3" json:"created,omitempty"` + Meta *AnswerMeta `protobuf:"bytes,6,opt,name=meta,proto3,oneof" json:"meta,omitempty"` + Artifacts []*Artifact `protobuf:"bytes,7,rep,name=artifacts,proto3" json:"artifacts,omitempty"` +} + +func (x *Answer) Reset() { + *x = Answer{} + if protoimpl.UnsafeEnabled { + mi := &file_stability_api_platform_generation_v1_generation_proto_msgTypes[32] + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + ms.StoreMessageInfo(mi) + } +} + +func (x *Answer) String() string { + return protoimpl.X.MessageStringOf(x) +} + +func (*Answer) ProtoMessage() {} + +func (x *Answer) ProtoReflect() protoreflect.Message { + mi := &file_stability_api_platform_generation_v1_generation_proto_msgTypes[32] + if protoimpl.UnsafeEnabled && x != nil { + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + if ms.LoadMessageInfo() == nil { + ms.StoreMessageInfo(mi) + } + return ms + } + return mi.MessageOf(x) +} + +// Deprecated: Use Answer.ProtoReflect.Descriptor instead. +func (*Answer) Descriptor() ([]byte, []int) { + return file_stability_api_platform_generation_v1_generation_proto_rawDescGZIP(), []int{32} +} + +func (x *Answer) GetAnswerId() string { + if x != nil { + return x.AnswerId + } + return "" +} + +func (x *Answer) GetRequestId() string { + if x != nil { + return x.RequestId + } + return "" +} + +func (x *Answer) GetReceived() uint64 { + if x != nil { + return x.Received + } + return 0 +} + +func (x *Answer) GetCreated() uint64 { + if x != nil { + return x.Created + } + return 0 +} + +func (x *Answer) GetMeta() *AnswerMeta { + if x != nil { + return x.Meta + } + return nil +} + +func (x *Answer) GetArtifacts() []*Artifact { + if x != nil { + return x.Artifacts + } + return nil +} + +// An AnswerBatch is a set of Answers. It can represent one or several completed +// requests, which may be sent to the client in a single response. +type AnswerBatch struct { + state protoimpl.MessageState + sizeCache protoimpl.SizeCache + unknownFields protoimpl.UnknownFields + + BatchId string `protobuf:"bytes,1,opt,name=batch_id,json=batchId,proto3" json:"batch_id,omitempty"` + Answers []*Answer `protobuf:"bytes,2,rep,name=answers,proto3" json:"answers,omitempty"` +} + +func (x *AnswerBatch) Reset() { + *x = AnswerBatch{} + if protoimpl.UnsafeEnabled { + mi := &file_stability_api_platform_generation_v1_generation_proto_msgTypes[33] + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + ms.StoreMessageInfo(mi) + } +} + +func (x *AnswerBatch) String() string { + return protoimpl.X.MessageStringOf(x) +} + +func (*AnswerBatch) ProtoMessage() {} + +func (x *AnswerBatch) ProtoReflect() protoreflect.Message { + mi := &file_stability_api_platform_generation_v1_generation_proto_msgTypes[33] + if protoimpl.UnsafeEnabled && x != nil { + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + if ms.LoadMessageInfo() == nil { + ms.StoreMessageInfo(mi) + } + return ms + } + return mi.MessageOf(x) +} + +// Deprecated: Use AnswerBatch.ProtoReflect.Descriptor instead. +func (*AnswerBatch) Descriptor() ([]byte, []int) { + return file_stability_api_platform_generation_v1_generation_proto_rawDescGZIP(), []int{33} +} + +func (x *AnswerBatch) GetBatchId() string { + if x != nil { + return x.BatchId + } + return "" +} + +func (x *AnswerBatch) GetAnswers() []*Answer { + if x != nil { + return x.Answers + } + return nil +} + +// A Request is a set of Artifacts, which can be of any type with model or +// transform parameters. It is sent to the server, which will respond with an +// Answer. +type Request struct { + state protoimpl.MessageState + sizeCache protoimpl.SizeCache + unknownFields protoimpl.UnknownFields + + EngineId string `protobuf:"bytes,1,opt,name=engine_id,json=engineId,proto3" json:"engine_id,omitempty"` + RequestId string `protobuf:"bytes,2,opt,name=request_id,json=requestId,proto3" json:"request_id,omitempty"` + RequestedType ArtifactType `protobuf:"varint,3,opt,name=requested_type,json=requestedType,proto3,enum=stabilityai.platformapis.generation.v1.ArtifactType" json:"requested_type,omitempty"` + Prompt []*Prompt `protobuf:"bytes,4,rep,name=prompt,proto3" json:"prompt,omitempty"` + // Types that are assignable to Params: + // + // *Request_Image + // *Request_Classifier + // *Request_Asset + // *Request_Interpolate + // *Request_Transform + Params isRequest_Params `protobuf_oneof:"params"` + Conditioner *ConditionerParameters `protobuf:"bytes,6,opt,name=conditioner,proto3,oneof" json:"conditioner,omitempty"` + Extras *structpb.Struct `protobuf:"bytes,2047,opt,name=extras,proto3,oneof" json:"extras,omitempty"` // for development use +} + +func (x *Request) Reset() { + *x = Request{} + if protoimpl.UnsafeEnabled { + mi := &file_stability_api_platform_generation_v1_generation_proto_msgTypes[34] + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + ms.StoreMessageInfo(mi) + } +} + +func (x *Request) String() string { + return protoimpl.X.MessageStringOf(x) +} + +func (*Request) ProtoMessage() {} + +func (x *Request) ProtoReflect() protoreflect.Message { + mi := &file_stability_api_platform_generation_v1_generation_proto_msgTypes[34] + if protoimpl.UnsafeEnabled && x != nil { + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + if ms.LoadMessageInfo() == nil { + ms.StoreMessageInfo(mi) + } + return ms + } + return mi.MessageOf(x) +} + +// Deprecated: Use Request.ProtoReflect.Descriptor instead. +func (*Request) Descriptor() ([]byte, []int) { + return file_stability_api_platform_generation_v1_generation_proto_rawDescGZIP(), []int{34} +} + +func (x *Request) GetEngineId() string { + if x != nil { + return x.EngineId + } + return "" +} + +func (x *Request) GetRequestId() string { + if x != nil { + return x.RequestId + } + return "" +} + +func (x *Request) GetRequestedType() ArtifactType { + if x != nil { + return x.RequestedType + } + return ArtifactType_ARTIFACT_NONE +} + +func (x *Request) GetPrompt() []*Prompt { + if x != nil { + return x.Prompt + } + return nil +} + +func (m *Request) GetParams() isRequest_Params { + if m != nil { + return m.Params + } + return nil +} + +func (x *Request) GetImage() *ImageParameters { + if x, ok := x.GetParams().(*Request_Image); ok { + return x.Image + } + return nil +} + +func (x *Request) GetClassifier() *ClassifierParameters { + if x, ok := x.GetParams().(*Request_Classifier); ok { + return x.Classifier + } + return nil +} + +func (x *Request) GetAsset() *AssetParameters { + if x, ok := x.GetParams().(*Request_Asset); ok { + return x.Asset + } + return nil +} + +func (x *Request) GetInterpolate() *InterpolateParameters { + if x, ok := x.GetParams().(*Request_Interpolate); ok { + return x.Interpolate + } + return nil +} + +func (x *Request) GetTransform() *TransformParameters { + if x, ok := x.GetParams().(*Request_Transform); ok { + return x.Transform + } + return nil +} + +func (x *Request) GetConditioner() *ConditionerParameters { + if x != nil { + return x.Conditioner + } + return nil +} + +func (x *Request) GetExtras() *structpb.Struct { + if x != nil { + return x.Extras + } + return nil +} + +type isRequest_Params interface { + isRequest_Params() +} + +type Request_Image struct { + Image *ImageParameters `protobuf:"bytes,5,opt,name=image,proto3,oneof"` +} + +type Request_Classifier struct { + Classifier *ClassifierParameters `protobuf:"bytes,7,opt,name=classifier,proto3,oneof"` +} + +type Request_Asset struct { + Asset *AssetParameters `protobuf:"bytes,8,opt,name=asset,proto3,oneof"` +} + +type Request_Interpolate struct { + Interpolate *InterpolateParameters `protobuf:"bytes,11,opt,name=interpolate,proto3,oneof"` +} + +type Request_Transform struct { + Transform *TransformParameters `protobuf:"bytes,12,opt,name=transform,proto3,oneof"` +} + +func (*Request_Image) isRequest_Params() {} + +func (*Request_Classifier) isRequest_Params() {} + +func (*Request_Asset) isRequest_Params() {} + +func (*Request_Interpolate) isRequest_Params() {} + +func (*Request_Transform) isRequest_Params() {} + +type OnStatus struct { + state protoimpl.MessageState + sizeCache protoimpl.SizeCache + unknownFields protoimpl.UnknownFields + + Reason []FinishReason `protobuf:"varint,1,rep,packed,name=reason,proto3,enum=stabilityai.platformapis.generation.v1.FinishReason" json:"reason,omitempty"` + Target *string `protobuf:"bytes,2,opt,name=target,proto3,oneof" json:"target,omitempty"` + Action []StageAction `protobuf:"varint,3,rep,packed,name=action,proto3,enum=stabilityai.platformapis.generation.v1.StageAction" json:"action,omitempty"` +} + +func (x *OnStatus) Reset() { + *x = OnStatus{} + if protoimpl.UnsafeEnabled { + mi := &file_stability_api_platform_generation_v1_generation_proto_msgTypes[35] + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + ms.StoreMessageInfo(mi) + } +} + +func (x *OnStatus) String() string { + return protoimpl.X.MessageStringOf(x) +} + +func (*OnStatus) ProtoMessage() {} + +func (x *OnStatus) ProtoReflect() protoreflect.Message { + mi := &file_stability_api_platform_generation_v1_generation_proto_msgTypes[35] + if protoimpl.UnsafeEnabled && x != nil { + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + if ms.LoadMessageInfo() == nil { + ms.StoreMessageInfo(mi) + } + return ms + } + return mi.MessageOf(x) +} + +// Deprecated: Use OnStatus.ProtoReflect.Descriptor instead. +func (*OnStatus) Descriptor() ([]byte, []int) { + return file_stability_api_platform_generation_v1_generation_proto_rawDescGZIP(), []int{35} +} + +func (x *OnStatus) GetReason() []FinishReason { + if x != nil { + return x.Reason + } + return nil +} + +func (x *OnStatus) GetTarget() string { + if x != nil && x.Target != nil { + return *x.Target + } + return "" +} + +func (x *OnStatus) GetAction() []StageAction { + if x != nil { + return x.Action + } + return nil +} + +type Stage struct { + state protoimpl.MessageState + sizeCache protoimpl.SizeCache + unknownFields protoimpl.UnknownFields + + Id string `protobuf:"bytes,1,opt,name=id,proto3" json:"id,omitempty"` + Request *Request `protobuf:"bytes,2,opt,name=request,proto3" json:"request,omitempty"` + OnStatus []*OnStatus `protobuf:"bytes,3,rep,name=on_status,json=onStatus,proto3" json:"on_status,omitempty"` +} + +func (x *Stage) Reset() { + *x = Stage{} + if protoimpl.UnsafeEnabled { + mi := &file_stability_api_platform_generation_v1_generation_proto_msgTypes[36] + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + ms.StoreMessageInfo(mi) + } +} + +func (x *Stage) String() string { + return protoimpl.X.MessageStringOf(x) +} + +func (*Stage) ProtoMessage() {} + +func (x *Stage) ProtoReflect() protoreflect.Message { + mi := &file_stability_api_platform_generation_v1_generation_proto_msgTypes[36] + if protoimpl.UnsafeEnabled && x != nil { + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + if ms.LoadMessageInfo() == nil { + ms.StoreMessageInfo(mi) + } + return ms + } + return mi.MessageOf(x) +} + +// Deprecated: Use Stage.ProtoReflect.Descriptor instead. +func (*Stage) Descriptor() ([]byte, []int) { + return file_stability_api_platform_generation_v1_generation_proto_rawDescGZIP(), []int{36} +} + +func (x *Stage) GetId() string { + if x != nil { + return x.Id + } + return "" +} + +func (x *Stage) GetRequest() *Request { + if x != nil { + return x.Request + } + return nil +} + +func (x *Stage) GetOnStatus() []*OnStatus { + if x != nil { + return x.OnStatus + } + return nil +} + +type ChainRequest struct { + state protoimpl.MessageState + sizeCache protoimpl.SizeCache + unknownFields protoimpl.UnknownFields + + RequestId string `protobuf:"bytes,1,opt,name=request_id,json=requestId,proto3" json:"request_id,omitempty"` + Stage []*Stage `protobuf:"bytes,2,rep,name=stage,proto3" json:"stage,omitempty"` +} + +func (x *ChainRequest) Reset() { + *x = ChainRequest{} + if protoimpl.UnsafeEnabled { + mi := &file_stability_api_platform_generation_v1_generation_proto_msgTypes[37] + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + ms.StoreMessageInfo(mi) + } +} + +func (x *ChainRequest) String() string { + return protoimpl.X.MessageStringOf(x) +} + +func (*ChainRequest) ProtoMessage() {} + +func (x *ChainRequest) ProtoReflect() protoreflect.Message { + mi := &file_stability_api_platform_generation_v1_generation_proto_msgTypes[37] + if protoimpl.UnsafeEnabled && x != nil { + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + if ms.LoadMessageInfo() == nil { + ms.StoreMessageInfo(mi) + } + return ms + } + return mi.MessageOf(x) +} + +// Deprecated: Use ChainRequest.ProtoReflect.Descriptor instead. +func (*ChainRequest) Descriptor() ([]byte, []int) { + return file_stability_api_platform_generation_v1_generation_proto_rawDescGZIP(), []int{37} +} + +func (x *ChainRequest) GetRequestId() string { + if x != nil { + return x.RequestId + } + return "" +} + +func (x *ChainRequest) GetStage() []*Stage { + if x != nil { + return x.Stage + } + return nil +} + +var File_stability_api_platform_generation_v1_generation_proto protoreflect.FileDescriptor + +var file_stability_api_platform_generation_v1_generation_proto_rawDesc = []byte{ + 0x0a, 0x35, 0x73, 0x74, 0x61, 0x62, 0x69, 0x6c, 0x69, 0x74, 0x79, 0x5f, 0x61, 0x70, 0x69, 0x2f, + 0x70, 0x6c, 0x61, 0x74, 0x66, 0x6f, 0x72, 0x6d, 0x2f, 0x67, 0x65, 0x6e, 0x65, 0x72, 0x61, 0x74, + 0x69, 0x6f, 0x6e, 0x2f, 0x76, 0x31, 0x2f, 0x67, 0x65, 0x6e, 0x65, 0x72, 0x61, 0x74, 0x69, 0x6f, + 0x6e, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x12, 0x26, 0x73, 0x74, 0x61, 0x62, 0x69, 0x6c, 0x69, + 0x74, 0x79, 0x61, 0x69, 0x2e, 0x70, 0x6c, 0x61, 0x74, 0x66, 0x6f, 0x72, 0x6d, 0x61, 0x70, 0x69, + 0x73, 0x2e, 0x67, 0x65, 0x6e, 0x65, 0x72, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x2e, 0x76, 0x31, 0x1a, + 0x1c, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2f, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x62, 0x75, 0x66, + 0x2f, 0x73, 0x74, 0x72, 0x75, 0x63, 0x74, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x1a, 0x23, 0x73, + 0x74, 0x61, 0x62, 0x69, 0x6c, 0x69, 0x74, 0x79, 0x5f, 0x61, 0x70, 0x69, 0x2f, 0x74, 0x65, 0x6e, + 0x73, 0x6f, 0x72, 0x73, 0x2f, 0x74, 0x65, 0x6e, 0x73, 0x6f, 0x72, 0x73, 0x2e, 0x70, 0x72, 0x6f, + 0x74, 0x6f, 0x22, 0x39, 0x0a, 0x05, 0x54, 0x6f, 0x6b, 0x65, 0x6e, 0x12, 0x17, 0x0a, 0x04, 0x74, + 0x65, 0x78, 0x74, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x48, 0x00, 0x52, 0x04, 0x74, 0x65, 0x78, + 0x74, 0x88, 0x01, 0x01, 0x12, 0x0e, 0x0a, 0x02, 0x69, 0x64, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0d, + 0x52, 0x02, 0x69, 0x64, 0x42, 0x07, 0x0a, 0x05, 0x5f, 0x74, 0x65, 0x78, 0x74, 0x22, 0x88, 0x01, + 0x0a, 0x06, 0x54, 0x6f, 0x6b, 0x65, 0x6e, 0x73, 0x12, 0x45, 0x0a, 0x06, 0x74, 0x6f, 0x6b, 0x65, + 0x6e, 0x73, 0x18, 0x01, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x2d, 0x2e, 0x73, 0x74, 0x61, 0x62, 0x69, + 0x6c, 0x69, 0x74, 0x79, 0x61, 0x69, 0x2e, 0x70, 0x6c, 0x61, 0x74, 0x66, 0x6f, 0x72, 0x6d, 0x61, + 0x70, 0x69, 0x73, 0x2e, 0x67, 0x65, 0x6e, 0x65, 0x72, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x2e, 0x76, + 0x31, 0x2e, 0x54, 0x6f, 0x6b, 0x65, 0x6e, 0x52, 0x06, 0x74, 0x6f, 0x6b, 0x65, 0x6e, 0x73, 0x12, + 0x26, 0x0a, 0x0c, 0x74, 0x6f, 0x6b, 0x65, 0x6e, 0x69, 0x7a, 0x65, 0x72, 0x5f, 0x69, 0x64, 0x18, + 0x02, 0x20, 0x01, 0x28, 0x09, 0x48, 0x00, 0x52, 0x0b, 0x74, 0x6f, 0x6b, 0x65, 0x6e, 0x69, 0x7a, + 0x65, 0x72, 0x49, 0x64, 0x88, 0x01, 0x01, 0x42, 0x0f, 0x0a, 0x0d, 0x5f, 0x74, 0x6f, 0x6b, 0x65, + 0x6e, 0x69, 0x7a, 0x65, 0x72, 0x5f, 0x69, 0x64, 0x22, 0xd7, 0x04, 0x0a, 0x08, 0x41, 0x72, 0x74, + 0x69, 0x66, 0x61, 0x63, 0x74, 0x12, 0x0e, 0x0a, 0x02, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, + 0x04, 0x52, 0x02, 0x69, 0x64, 0x12, 0x48, 0x0a, 0x04, 0x74, 0x79, 0x70, 0x65, 0x18, 0x02, 0x20, + 0x01, 0x28, 0x0e, 0x32, 0x34, 0x2e, 0x73, 0x74, 0x61, 0x62, 0x69, 0x6c, 0x69, 0x74, 0x79, 0x61, + 0x69, 0x2e, 0x70, 0x6c, 0x61, 0x74, 0x66, 0x6f, 0x72, 0x6d, 0x61, 0x70, 0x69, 0x73, 0x2e, 0x67, + 0x65, 0x6e, 0x65, 0x72, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x2e, 0x76, 0x31, 0x2e, 0x41, 0x72, 0x74, + 0x69, 0x66, 0x61, 0x63, 0x74, 0x54, 0x79, 0x70, 0x65, 0x52, 0x04, 0x74, 0x79, 0x70, 0x65, 0x12, + 0x12, 0x0a, 0x04, 0x6d, 0x69, 0x6d, 0x65, 0x18, 0x03, 0x20, 0x01, 0x28, 0x09, 0x52, 0x04, 0x6d, + 0x69, 0x6d, 0x65, 0x12, 0x19, 0x0a, 0x05, 0x6d, 0x61, 0x67, 0x69, 0x63, 0x18, 0x04, 0x20, 0x01, + 0x28, 0x09, 0x48, 0x01, 0x52, 0x05, 0x6d, 0x61, 0x67, 0x69, 0x63, 0x88, 0x01, 0x01, 0x12, 0x18, + 0x0a, 0x06, 0x62, 0x69, 0x6e, 0x61, 0x72, 0x79, 0x18, 0x05, 0x20, 0x01, 0x28, 0x0c, 0x48, 0x00, + 0x52, 0x06, 0x62, 0x69, 0x6e, 0x61, 0x72, 0x79, 0x12, 0x14, 0x0a, 0x04, 0x74, 0x65, 0x78, 0x74, + 0x18, 0x06, 0x20, 0x01, 0x28, 0x09, 0x48, 0x00, 0x52, 0x04, 0x74, 0x65, 0x78, 0x74, 0x12, 0x48, + 0x0a, 0x06, 0x74, 0x6f, 0x6b, 0x65, 0x6e, 0x73, 0x18, 0x07, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x2e, + 0x2e, 0x73, 0x74, 0x61, 0x62, 0x69, 0x6c, 0x69, 0x74, 0x79, 0x61, 0x69, 0x2e, 0x70, 0x6c, 0x61, + 0x74, 0x66, 0x6f, 0x72, 0x6d, 0x61, 0x70, 0x69, 0x73, 0x2e, 0x67, 0x65, 0x6e, 0x65, 0x72, 0x61, + 0x74, 0x69, 0x6f, 0x6e, 0x2e, 0x76, 0x31, 0x2e, 0x54, 0x6f, 0x6b, 0x65, 0x6e, 0x73, 0x48, 0x00, + 0x52, 0x06, 0x74, 0x6f, 0x6b, 0x65, 0x6e, 0x73, 0x12, 0x5e, 0x0a, 0x0a, 0x63, 0x6c, 0x61, 0x73, + 0x73, 0x69, 0x66, 0x69, 0x65, 0x72, 0x18, 0x0b, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x3c, 0x2e, 0x73, + 0x74, 0x61, 0x62, 0x69, 0x6c, 0x69, 0x74, 0x79, 0x61, 0x69, 0x2e, 0x70, 0x6c, 0x61, 0x74, 0x66, + 0x6f, 0x72, 0x6d, 0x61, 0x70, 0x69, 0x73, 0x2e, 0x67, 0x65, 0x6e, 0x65, 0x72, 0x61, 0x74, 0x69, + 0x6f, 0x6e, 0x2e, 0x76, 0x31, 0x2e, 0x43, 0x6c, 0x61, 0x73, 0x73, 0x69, 0x66, 0x69, 0x65, 0x72, + 0x50, 0x61, 0x72, 0x61, 0x6d, 0x65, 0x74, 0x65, 0x72, 0x73, 0x48, 0x00, 0x52, 0x0a, 0x63, 0x6c, + 0x61, 0x73, 0x73, 0x69, 0x66, 0x69, 0x65, 0x72, 0x12, 0x29, 0x0a, 0x06, 0x74, 0x65, 0x6e, 0x73, + 0x6f, 0x72, 0x18, 0x0e, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x0f, 0x2e, 0x74, 0x65, 0x6e, 0x73, 0x6f, + 0x72, 0x73, 0x2e, 0x54, 0x65, 0x6e, 0x73, 0x6f, 0x72, 0x48, 0x00, 0x52, 0x06, 0x74, 0x65, 0x6e, + 0x73, 0x6f, 0x72, 0x12, 0x14, 0x0a, 0x05, 0x69, 0x6e, 0x64, 0x65, 0x78, 0x18, 0x08, 0x20, 0x01, + 0x28, 0x0d, 0x52, 0x05, 0x69, 0x6e, 0x64, 0x65, 0x78, 0x12, 0x59, 0x0a, 0x0d, 0x66, 0x69, 0x6e, + 0x69, 0x73, 0x68, 0x5f, 0x72, 0x65, 0x61, 0x73, 0x6f, 0x6e, 0x18, 0x09, 0x20, 0x01, 0x28, 0x0e, + 0x32, 0x34, 0x2e, 0x73, 0x74, 0x61, 0x62, 0x69, 0x6c, 0x69, 0x74, 0x79, 0x61, 0x69, 0x2e, 0x70, + 0x6c, 0x61, 0x74, 0x66, 0x6f, 0x72, 0x6d, 0x61, 0x70, 0x69, 0x73, 0x2e, 0x67, 0x65, 0x6e, 0x65, + 0x72, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x2e, 0x76, 0x31, 0x2e, 0x46, 0x69, 0x6e, 0x69, 0x73, 0x68, + 0x52, 0x65, 0x61, 0x73, 0x6f, 0x6e, 0x52, 0x0c, 0x66, 0x69, 0x6e, 0x69, 0x73, 0x68, 0x52, 0x65, + 0x61, 0x73, 0x6f, 0x6e, 0x12, 0x12, 0x0a, 0x04, 0x73, 0x65, 0x65, 0x64, 0x18, 0x0a, 0x20, 0x01, + 0x28, 0x0d, 0x52, 0x04, 0x73, 0x65, 0x65, 0x64, 0x12, 0x12, 0x0a, 0x04, 0x75, 0x75, 0x69, 0x64, + 0x18, 0x0c, 0x20, 0x01, 0x28, 0x09, 0x52, 0x04, 0x75, 0x75, 0x69, 0x64, 0x12, 0x12, 0x0a, 0x04, + 0x73, 0x69, 0x7a, 0x65, 0x18, 0x0d, 0x20, 0x01, 0x28, 0x04, 0x52, 0x04, 0x73, 0x69, 0x7a, 0x65, + 0x42, 0x06, 0x0a, 0x04, 0x64, 0x61, 0x74, 0x61, 0x42, 0x08, 0x0a, 0x06, 0x5f, 0x6d, 0x61, 0x67, + 0x69, 0x63, 0x22, 0x5c, 0x0a, 0x10, 0x50, 0x72, 0x6f, 0x6d, 0x70, 0x74, 0x50, 0x61, 0x72, 0x61, + 0x6d, 0x65, 0x74, 0x65, 0x72, 0x73, 0x12, 0x17, 0x0a, 0x04, 0x69, 0x6e, 0x69, 0x74, 0x18, 0x01, + 0x20, 0x01, 0x28, 0x08, 0x48, 0x00, 0x52, 0x04, 0x69, 0x6e, 0x69, 0x74, 0x88, 0x01, 0x01, 0x12, + 0x1b, 0x0a, 0x06, 0x77, 0x65, 0x69, 0x67, 0x68, 0x74, 0x18, 0x02, 0x20, 0x01, 0x28, 0x02, 0x48, + 0x01, 0x52, 0x06, 0x77, 0x65, 0x69, 0x67, 0x68, 0x74, 0x88, 0x01, 0x01, 0x42, 0x07, 0x0a, 0x05, + 0x5f, 0x69, 0x6e, 0x69, 0x74, 0x42, 0x09, 0x0a, 0x07, 0x5f, 0x77, 0x65, 0x69, 0x67, 0x68, 0x74, + 0x22, 0xb0, 0x02, 0x0a, 0x06, 0x50, 0x72, 0x6f, 0x6d, 0x70, 0x74, 0x12, 0x5d, 0x0a, 0x0a, 0x70, + 0x61, 0x72, 0x61, 0x6d, 0x65, 0x74, 0x65, 0x72, 0x73, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0b, 0x32, + 0x38, 0x2e, 0x73, 0x74, 0x61, 0x62, 0x69, 0x6c, 0x69, 0x74, 0x79, 0x61, 0x69, 0x2e, 0x70, 0x6c, + 0x61, 0x74, 0x66, 0x6f, 0x72, 0x6d, 0x61, 0x70, 0x69, 0x73, 0x2e, 0x67, 0x65, 0x6e, 0x65, 0x72, + 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x2e, 0x76, 0x31, 0x2e, 0x50, 0x72, 0x6f, 0x6d, 0x70, 0x74, 0x50, + 0x61, 0x72, 0x61, 0x6d, 0x65, 0x74, 0x65, 0x72, 0x73, 0x48, 0x01, 0x52, 0x0a, 0x70, 0x61, 0x72, + 0x61, 0x6d, 0x65, 0x74, 0x65, 0x72, 0x73, 0x88, 0x01, 0x01, 0x12, 0x14, 0x0a, 0x04, 0x74, 0x65, + 0x78, 0x74, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x48, 0x00, 0x52, 0x04, 0x74, 0x65, 0x78, 0x74, + 0x12, 0x48, 0x0a, 0x06, 0x74, 0x6f, 0x6b, 0x65, 0x6e, 0x73, 0x18, 0x03, 0x20, 0x01, 0x28, 0x0b, + 0x32, 0x2e, 0x2e, 0x73, 0x74, 0x61, 0x62, 0x69, 0x6c, 0x69, 0x74, 0x79, 0x61, 0x69, 0x2e, 0x70, + 0x6c, 0x61, 0x74, 0x66, 0x6f, 0x72, 0x6d, 0x61, 0x70, 0x69, 0x73, 0x2e, 0x67, 0x65, 0x6e, 0x65, + 0x72, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x2e, 0x76, 0x31, 0x2e, 0x54, 0x6f, 0x6b, 0x65, 0x6e, 0x73, + 0x48, 0x00, 0x52, 0x06, 0x74, 0x6f, 0x6b, 0x65, 0x6e, 0x73, 0x12, 0x4e, 0x0a, 0x08, 0x61, 0x72, + 0x74, 0x69, 0x66, 0x61, 0x63, 0x74, 0x18, 0x04, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x30, 0x2e, 0x73, + 0x74, 0x61, 0x62, 0x69, 0x6c, 0x69, 0x74, 0x79, 0x61, 0x69, 0x2e, 0x70, 0x6c, 0x61, 0x74, 0x66, + 0x6f, 0x72, 0x6d, 0x61, 0x70, 0x69, 0x73, 0x2e, 0x67, 0x65, 0x6e, 0x65, 0x72, 0x61, 0x74, 0x69, + 0x6f, 0x6e, 0x2e, 0x76, 0x31, 0x2e, 0x41, 0x72, 0x74, 0x69, 0x66, 0x61, 0x63, 0x74, 0x48, 0x00, + 0x52, 0x08, 0x61, 0x72, 0x74, 0x69, 0x66, 0x61, 0x63, 0x74, 0x42, 0x08, 0x0a, 0x06, 0x70, 0x72, + 0x6f, 0x6d, 0x70, 0x74, 0x42, 0x0d, 0x0a, 0x0b, 0x5f, 0x70, 0x61, 0x72, 0x61, 0x6d, 0x65, 0x74, + 0x65, 0x72, 0x73, 0x22, 0xb9, 0x03, 0x0a, 0x11, 0x53, 0x61, 0x6d, 0x70, 0x6c, 0x65, 0x72, 0x50, + 0x61, 0x72, 0x61, 0x6d, 0x65, 0x74, 0x65, 0x72, 0x73, 0x12, 0x15, 0x0a, 0x03, 0x65, 0x74, 0x61, + 0x18, 0x01, 0x20, 0x01, 0x28, 0x02, 0x48, 0x00, 0x52, 0x03, 0x65, 0x74, 0x61, 0x88, 0x01, 0x01, + 0x12, 0x2a, 0x0a, 0x0e, 0x73, 0x61, 0x6d, 0x70, 0x6c, 0x69, 0x6e, 0x67, 0x5f, 0x73, 0x74, 0x65, + 0x70, 0x73, 0x18, 0x02, 0x20, 0x01, 0x28, 0x04, 0x48, 0x01, 0x52, 0x0d, 0x73, 0x61, 0x6d, 0x70, + 0x6c, 0x69, 0x6e, 0x67, 0x53, 0x74, 0x65, 0x70, 0x73, 0x88, 0x01, 0x01, 0x12, 0x2c, 0x0a, 0x0f, + 0x6c, 0x61, 0x74, 0x65, 0x6e, 0x74, 0x5f, 0x63, 0x68, 0x61, 0x6e, 0x6e, 0x65, 0x6c, 0x73, 0x18, + 0x03, 0x20, 0x01, 0x28, 0x04, 0x48, 0x02, 0x52, 0x0e, 0x6c, 0x61, 0x74, 0x65, 0x6e, 0x74, 0x43, + 0x68, 0x61, 0x6e, 0x6e, 0x65, 0x6c, 0x73, 0x88, 0x01, 0x01, 0x12, 0x34, 0x0a, 0x13, 0x64, 0x6f, + 0x77, 0x6e, 0x73, 0x61, 0x6d, 0x70, 0x6c, 0x69, 0x6e, 0x67, 0x5f, 0x66, 0x61, 0x63, 0x74, 0x6f, + 0x72, 0x18, 0x04, 0x20, 0x01, 0x28, 0x04, 0x48, 0x03, 0x52, 0x12, 0x64, 0x6f, 0x77, 0x6e, 0x73, + 0x61, 0x6d, 0x70, 0x6c, 0x69, 0x6e, 0x67, 0x46, 0x61, 0x63, 0x74, 0x6f, 0x72, 0x88, 0x01, 0x01, + 0x12, 0x20, 0x0a, 0x09, 0x63, 0x66, 0x67, 0x5f, 0x73, 0x63, 0x61, 0x6c, 0x65, 0x18, 0x05, 0x20, + 0x01, 0x28, 0x02, 0x48, 0x04, 0x52, 0x08, 0x63, 0x66, 0x67, 0x53, 0x63, 0x61, 0x6c, 0x65, 0x88, + 0x01, 0x01, 0x12, 0x2d, 0x0a, 0x10, 0x69, 0x6e, 0x69, 0x74, 0x5f, 0x6e, 0x6f, 0x69, 0x73, 0x65, + 0x5f, 0x73, 0x63, 0x61, 0x6c, 0x65, 0x18, 0x06, 0x20, 0x01, 0x28, 0x02, 0x48, 0x05, 0x52, 0x0e, + 0x69, 0x6e, 0x69, 0x74, 0x4e, 0x6f, 0x69, 0x73, 0x65, 0x53, 0x63, 0x61, 0x6c, 0x65, 0x88, 0x01, + 0x01, 0x12, 0x2d, 0x0a, 0x10, 0x73, 0x74, 0x65, 0x70, 0x5f, 0x6e, 0x6f, 0x69, 0x73, 0x65, 0x5f, + 0x73, 0x63, 0x61, 0x6c, 0x65, 0x18, 0x07, 0x20, 0x01, 0x28, 0x02, 0x48, 0x06, 0x52, 0x0e, 0x73, + 0x74, 0x65, 0x70, 0x4e, 0x6f, 0x69, 0x73, 0x65, 0x53, 0x63, 0x61, 0x6c, 0x65, 0x88, 0x01, 0x01, + 0x42, 0x06, 0x0a, 0x04, 0x5f, 0x65, 0x74, 0x61, 0x42, 0x11, 0x0a, 0x0f, 0x5f, 0x73, 0x61, 0x6d, + 0x70, 0x6c, 0x69, 0x6e, 0x67, 0x5f, 0x73, 0x74, 0x65, 0x70, 0x73, 0x42, 0x12, 0x0a, 0x10, 0x5f, + 0x6c, 0x61, 0x74, 0x65, 0x6e, 0x74, 0x5f, 0x63, 0x68, 0x61, 0x6e, 0x6e, 0x65, 0x6c, 0x73, 0x42, + 0x16, 0x0a, 0x14, 0x5f, 0x64, 0x6f, 0x77, 0x6e, 0x73, 0x61, 0x6d, 0x70, 0x6c, 0x69, 0x6e, 0x67, + 0x5f, 0x66, 0x61, 0x63, 0x74, 0x6f, 0x72, 0x42, 0x0c, 0x0a, 0x0a, 0x5f, 0x63, 0x66, 0x67, 0x5f, + 0x73, 0x63, 0x61, 0x6c, 0x65, 0x42, 0x13, 0x0a, 0x11, 0x5f, 0x69, 0x6e, 0x69, 0x74, 0x5f, 0x6e, + 0x6f, 0x69, 0x73, 0x65, 0x5f, 0x73, 0x63, 0x61, 0x6c, 0x65, 0x42, 0x13, 0x0a, 0x11, 0x5f, 0x73, + 0x74, 0x65, 0x70, 0x5f, 0x6e, 0x6f, 0x69, 0x73, 0x65, 0x5f, 0x73, 0x63, 0x61, 0x6c, 0x65, 0x22, + 0xca, 0x01, 0x0a, 0x15, 0x43, 0x6f, 0x6e, 0x64, 0x69, 0x74, 0x69, 0x6f, 0x6e, 0x65, 0x72, 0x50, + 0x61, 0x72, 0x61, 0x6d, 0x65, 0x74, 0x65, 0x72, 0x73, 0x12, 0x33, 0x0a, 0x13, 0x76, 0x65, 0x63, + 0x74, 0x6f, 0x72, 0x5f, 0x61, 0x64, 0x6a, 0x75, 0x73, 0x74, 0x5f, 0x70, 0x72, 0x69, 0x6f, 0x72, + 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x48, 0x00, 0x52, 0x11, 0x76, 0x65, 0x63, 0x74, 0x6f, 0x72, + 0x41, 0x64, 0x6a, 0x75, 0x73, 0x74, 0x50, 0x72, 0x69, 0x6f, 0x72, 0x88, 0x01, 0x01, 0x12, 0x54, + 0x0a, 0x0b, 0x63, 0x6f, 0x6e, 0x64, 0x69, 0x74, 0x69, 0x6f, 0x6e, 0x65, 0x72, 0x18, 0x02, 0x20, + 0x01, 0x28, 0x0b, 0x32, 0x2d, 0x2e, 0x73, 0x74, 0x61, 0x62, 0x69, 0x6c, 0x69, 0x74, 0x79, 0x61, + 0x69, 0x2e, 0x70, 0x6c, 0x61, 0x74, 0x66, 0x6f, 0x72, 0x6d, 0x61, 0x70, 0x69, 0x73, 0x2e, 0x67, + 0x65, 0x6e, 0x65, 0x72, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x2e, 0x76, 0x31, 0x2e, 0x4d, 0x6f, 0x64, + 0x65, 0x6c, 0x48, 0x01, 0x52, 0x0b, 0x63, 0x6f, 0x6e, 0x64, 0x69, 0x74, 0x69, 0x6f, 0x6e, 0x65, + 0x72, 0x88, 0x01, 0x01, 0x42, 0x16, 0x0a, 0x14, 0x5f, 0x76, 0x65, 0x63, 0x74, 0x6f, 0x72, 0x5f, + 0x61, 0x64, 0x6a, 0x75, 0x73, 0x74, 0x5f, 0x70, 0x72, 0x69, 0x6f, 0x72, 0x42, 0x0e, 0x0a, 0x0c, + 0x5f, 0x63, 0x6f, 0x6e, 0x64, 0x69, 0x74, 0x69, 0x6f, 0x6e, 0x65, 0x72, 0x22, 0x7d, 0x0a, 0x12, + 0x53, 0x63, 0x68, 0x65, 0x64, 0x75, 0x6c, 0x65, 0x50, 0x61, 0x72, 0x61, 0x6d, 0x65, 0x74, 0x65, + 0x72, 0x73, 0x12, 0x19, 0x0a, 0x05, 0x73, 0x74, 0x61, 0x72, 0x74, 0x18, 0x01, 0x20, 0x01, 0x28, + 0x02, 0x48, 0x00, 0x52, 0x05, 0x73, 0x74, 0x61, 0x72, 0x74, 0x88, 0x01, 0x01, 0x12, 0x15, 0x0a, + 0x03, 0x65, 0x6e, 0x64, 0x18, 0x02, 0x20, 0x01, 0x28, 0x02, 0x48, 0x01, 0x52, 0x03, 0x65, 0x6e, + 0x64, 0x88, 0x01, 0x01, 0x12, 0x19, 0x0a, 0x05, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x18, 0x03, 0x20, + 0x01, 0x28, 0x02, 0x48, 0x02, 0x52, 0x05, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x88, 0x01, 0x01, 0x42, + 0x08, 0x0a, 0x06, 0x5f, 0x73, 0x74, 0x61, 0x72, 0x74, 0x42, 0x06, 0x0a, 0x04, 0x5f, 0x65, 0x6e, + 0x64, 0x42, 0x08, 0x0a, 0x06, 0x5f, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x22, 0xea, 0x02, 0x0a, 0x0d, + 0x53, 0x74, 0x65, 0x70, 0x50, 0x61, 0x72, 0x61, 0x6d, 0x65, 0x74, 0x65, 0x72, 0x12, 0x1f, 0x0a, + 0x0b, 0x73, 0x63, 0x61, 0x6c, 0x65, 0x64, 0x5f, 0x73, 0x74, 0x65, 0x70, 0x18, 0x01, 0x20, 0x01, + 0x28, 0x02, 0x52, 0x0a, 0x73, 0x63, 0x61, 0x6c, 0x65, 0x64, 0x53, 0x74, 0x65, 0x70, 0x12, 0x58, + 0x0a, 0x07, 0x73, 0x61, 0x6d, 0x70, 0x6c, 0x65, 0x72, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0b, 0x32, + 0x39, 0x2e, 0x73, 0x74, 0x61, 0x62, 0x69, 0x6c, 0x69, 0x74, 0x79, 0x61, 0x69, 0x2e, 0x70, 0x6c, + 0x61, 0x74, 0x66, 0x6f, 0x72, 0x6d, 0x61, 0x70, 0x69, 0x73, 0x2e, 0x67, 0x65, 0x6e, 0x65, 0x72, + 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x2e, 0x76, 0x31, 0x2e, 0x53, 0x61, 0x6d, 0x70, 0x6c, 0x65, 0x72, + 0x50, 0x61, 0x72, 0x61, 0x6d, 0x65, 0x74, 0x65, 0x72, 0x73, 0x48, 0x00, 0x52, 0x07, 0x73, 0x61, + 0x6d, 0x70, 0x6c, 0x65, 0x72, 0x88, 0x01, 0x01, 0x12, 0x5b, 0x0a, 0x08, 0x73, 0x63, 0x68, 0x65, + 0x64, 0x75, 0x6c, 0x65, 0x18, 0x03, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x3a, 0x2e, 0x73, 0x74, 0x61, + 0x62, 0x69, 0x6c, 0x69, 0x74, 0x79, 0x61, 0x69, 0x2e, 0x70, 0x6c, 0x61, 0x74, 0x66, 0x6f, 0x72, + 0x6d, 0x61, 0x70, 0x69, 0x73, 0x2e, 0x67, 0x65, 0x6e, 0x65, 0x72, 0x61, 0x74, 0x69, 0x6f, 0x6e, + 0x2e, 0x76, 0x31, 0x2e, 0x53, 0x63, 0x68, 0x65, 0x64, 0x75, 0x6c, 0x65, 0x50, 0x61, 0x72, 0x61, + 0x6d, 0x65, 0x74, 0x65, 0x72, 0x73, 0x48, 0x01, 0x52, 0x08, 0x73, 0x63, 0x68, 0x65, 0x64, 0x75, + 0x6c, 0x65, 0x88, 0x01, 0x01, 0x12, 0x5b, 0x0a, 0x08, 0x67, 0x75, 0x69, 0x64, 0x61, 0x6e, 0x63, + 0x65, 0x18, 0x04, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x3a, 0x2e, 0x73, 0x74, 0x61, 0x62, 0x69, 0x6c, + 0x69, 0x74, 0x79, 0x61, 0x69, 0x2e, 0x70, 0x6c, 0x61, 0x74, 0x66, 0x6f, 0x72, 0x6d, 0x61, 0x70, + 0x69, 0x73, 0x2e, 0x67, 0x65, 0x6e, 0x65, 0x72, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x2e, 0x76, 0x31, + 0x2e, 0x47, 0x75, 0x69, 0x64, 0x61, 0x6e, 0x63, 0x65, 0x50, 0x61, 0x72, 0x61, 0x6d, 0x65, 0x74, + 0x65, 0x72, 0x73, 0x48, 0x02, 0x52, 0x08, 0x67, 0x75, 0x69, 0x64, 0x61, 0x6e, 0x63, 0x65, 0x88, + 0x01, 0x01, 0x42, 0x0a, 0x0a, 0x08, 0x5f, 0x73, 0x61, 0x6d, 0x70, 0x6c, 0x65, 0x72, 0x42, 0x0b, + 0x0a, 0x09, 0x5f, 0x73, 0x63, 0x68, 0x65, 0x64, 0x75, 0x6c, 0x65, 0x42, 0x0b, 0x0a, 0x09, 0x5f, + 0x67, 0x75, 0x69, 0x64, 0x61, 0x6e, 0x63, 0x65, 0x22, 0xf9, 0x01, 0x0a, 0x05, 0x4d, 0x6f, 0x64, + 0x65, 0x6c, 0x12, 0x5d, 0x0a, 0x0c, 0x61, 0x72, 0x63, 0x68, 0x69, 0x74, 0x65, 0x63, 0x74, 0x75, + 0x72, 0x65, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0e, 0x32, 0x39, 0x2e, 0x73, 0x74, 0x61, 0x62, 0x69, + 0x6c, 0x69, 0x74, 0x79, 0x61, 0x69, 0x2e, 0x70, 0x6c, 0x61, 0x74, 0x66, 0x6f, 0x72, 0x6d, 0x61, + 0x70, 0x69, 0x73, 0x2e, 0x67, 0x65, 0x6e, 0x65, 0x72, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x2e, 0x76, + 0x31, 0x2e, 0x4d, 0x6f, 0x64, 0x65, 0x6c, 0x41, 0x72, 0x63, 0x68, 0x69, 0x74, 0x65, 0x63, 0x74, + 0x75, 0x72, 0x65, 0x52, 0x0c, 0x61, 0x72, 0x63, 0x68, 0x69, 0x74, 0x65, 0x63, 0x74, 0x75, 0x72, + 0x65, 0x12, 0x1c, 0x0a, 0x09, 0x70, 0x75, 0x62, 0x6c, 0x69, 0x73, 0x68, 0x65, 0x72, 0x18, 0x02, + 0x20, 0x01, 0x28, 0x09, 0x52, 0x09, 0x70, 0x75, 0x62, 0x6c, 0x69, 0x73, 0x68, 0x65, 0x72, 0x12, + 0x18, 0x0a, 0x07, 0x64, 0x61, 0x74, 0x61, 0x73, 0x65, 0x74, 0x18, 0x03, 0x20, 0x01, 0x28, 0x09, + 0x52, 0x07, 0x64, 0x61, 0x74, 0x61, 0x73, 0x65, 0x74, 0x12, 0x18, 0x0a, 0x07, 0x76, 0x65, 0x72, + 0x73, 0x69, 0x6f, 0x6e, 0x18, 0x04, 0x20, 0x01, 0x28, 0x02, 0x52, 0x07, 0x76, 0x65, 0x72, 0x73, + 0x69, 0x6f, 0x6e, 0x12, 0x29, 0x0a, 0x10, 0x73, 0x65, 0x6d, 0x61, 0x6e, 0x74, 0x69, 0x63, 0x5f, + 0x76, 0x65, 0x72, 0x73, 0x69, 0x6f, 0x6e, 0x18, 0x05, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0f, 0x73, + 0x65, 0x6d, 0x61, 0x6e, 0x74, 0x69, 0x63, 0x56, 0x65, 0x72, 0x73, 0x69, 0x6f, 0x6e, 0x12, 0x14, + 0x0a, 0x05, 0x61, 0x6c, 0x69, 0x61, 0x73, 0x18, 0x06, 0x20, 0x01, 0x28, 0x09, 0x52, 0x05, 0x61, + 0x6c, 0x69, 0x61, 0x73, 0x22, 0x82, 0x02, 0x0a, 0x10, 0x43, 0x75, 0x74, 0x6f, 0x75, 0x74, 0x50, + 0x61, 0x72, 0x61, 0x6d, 0x65, 0x74, 0x65, 0x72, 0x73, 0x12, 0x52, 0x0a, 0x07, 0x63, 0x75, 0x74, + 0x6f, 0x75, 0x74, 0x73, 0x18, 0x01, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x38, 0x2e, 0x73, 0x74, 0x61, + 0x62, 0x69, 0x6c, 0x69, 0x74, 0x79, 0x61, 0x69, 0x2e, 0x70, 0x6c, 0x61, 0x74, 0x66, 0x6f, 0x72, + 0x6d, 0x61, 0x70, 0x69, 0x73, 0x2e, 0x67, 0x65, 0x6e, 0x65, 0x72, 0x61, 0x74, 0x69, 0x6f, 0x6e, + 0x2e, 0x76, 0x31, 0x2e, 0x43, 0x75, 0x74, 0x6f, 0x75, 0x74, 0x50, 0x61, 0x72, 0x61, 0x6d, 0x65, + 0x74, 0x65, 0x72, 0x73, 0x52, 0x07, 0x63, 0x75, 0x74, 0x6f, 0x75, 0x74, 0x73, 0x12, 0x19, 0x0a, + 0x05, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0d, 0x48, 0x00, 0x52, 0x05, + 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x88, 0x01, 0x01, 0x12, 0x17, 0x0a, 0x04, 0x67, 0x72, 0x61, 0x79, + 0x18, 0x03, 0x20, 0x01, 0x28, 0x02, 0x48, 0x01, 0x52, 0x04, 0x67, 0x72, 0x61, 0x79, 0x88, 0x01, + 0x01, 0x12, 0x17, 0x0a, 0x04, 0x62, 0x6c, 0x75, 0x72, 0x18, 0x04, 0x20, 0x01, 0x28, 0x02, 0x48, + 0x02, 0x52, 0x04, 0x62, 0x6c, 0x75, 0x72, 0x88, 0x01, 0x01, 0x12, 0x22, 0x0a, 0x0a, 0x73, 0x69, + 0x7a, 0x65, 0x5f, 0x70, 0x6f, 0x77, 0x65, 0x72, 0x18, 0x05, 0x20, 0x01, 0x28, 0x02, 0x48, 0x03, + 0x52, 0x09, 0x73, 0x69, 0x7a, 0x65, 0x50, 0x6f, 0x77, 0x65, 0x72, 0x88, 0x01, 0x01, 0x42, 0x08, + 0x0a, 0x06, 0x5f, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x42, 0x07, 0x0a, 0x05, 0x5f, 0x67, 0x72, 0x61, + 0x79, 0x42, 0x07, 0x0a, 0x05, 0x5f, 0x62, 0x6c, 0x75, 0x72, 0x42, 0x0d, 0x0a, 0x0b, 0x5f, 0x73, + 0x69, 0x7a, 0x65, 0x5f, 0x70, 0x6f, 0x77, 0x65, 0x72, 0x22, 0x4e, 0x0a, 0x1a, 0x47, 0x75, 0x69, + 0x64, 0x61, 0x6e, 0x63, 0x65, 0x53, 0x63, 0x68, 0x65, 0x64, 0x75, 0x6c, 0x65, 0x50, 0x61, 0x72, + 0x61, 0x6d, 0x65, 0x74, 0x65, 0x72, 0x73, 0x12, 0x1a, 0x0a, 0x08, 0x64, 0x75, 0x72, 0x61, 0x74, + 0x69, 0x6f, 0x6e, 0x18, 0x01, 0x20, 0x01, 0x28, 0x02, 0x52, 0x08, 0x64, 0x75, 0x72, 0x61, 0x74, + 0x69, 0x6f, 0x6e, 0x12, 0x14, 0x0a, 0x05, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x18, 0x02, 0x20, 0x01, + 0x28, 0x02, 0x52, 0x05, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x22, 0xc8, 0x03, 0x0a, 0x1a, 0x47, 0x75, + 0x69, 0x64, 0x61, 0x6e, 0x63, 0x65, 0x49, 0x6e, 0x73, 0x74, 0x61, 0x6e, 0x63, 0x65, 0x50, 0x61, + 0x72, 0x61, 0x6d, 0x65, 0x74, 0x65, 0x72, 0x73, 0x12, 0x45, 0x0a, 0x06, 0x6d, 0x6f, 0x64, 0x65, + 0x6c, 0x73, 0x18, 0x02, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x2d, 0x2e, 0x73, 0x74, 0x61, 0x62, 0x69, + 0x6c, 0x69, 0x74, 0x79, 0x61, 0x69, 0x2e, 0x70, 0x6c, 0x61, 0x74, 0x66, 0x6f, 0x72, 0x6d, 0x61, + 0x70, 0x69, 0x73, 0x2e, 0x67, 0x65, 0x6e, 0x65, 0x72, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x2e, 0x76, + 0x31, 0x2e, 0x4d, 0x6f, 0x64, 0x65, 0x6c, 0x52, 0x06, 0x6d, 0x6f, 0x64, 0x65, 0x6c, 0x73, 0x12, + 0x30, 0x0a, 0x11, 0x67, 0x75, 0x69, 0x64, 0x61, 0x6e, 0x63, 0x65, 0x5f, 0x73, 0x74, 0x72, 0x65, + 0x6e, 0x67, 0x74, 0x68, 0x18, 0x03, 0x20, 0x01, 0x28, 0x02, 0x48, 0x00, 0x52, 0x10, 0x67, 0x75, + 0x69, 0x64, 0x61, 0x6e, 0x63, 0x65, 0x53, 0x74, 0x72, 0x65, 0x6e, 0x67, 0x74, 0x68, 0x88, 0x01, + 0x01, 0x12, 0x5e, 0x0a, 0x08, 0x73, 0x63, 0x68, 0x65, 0x64, 0x75, 0x6c, 0x65, 0x18, 0x04, 0x20, + 0x03, 0x28, 0x0b, 0x32, 0x42, 0x2e, 0x73, 0x74, 0x61, 0x62, 0x69, 0x6c, 0x69, 0x74, 0x79, 0x61, + 0x69, 0x2e, 0x70, 0x6c, 0x61, 0x74, 0x66, 0x6f, 0x72, 0x6d, 0x61, 0x70, 0x69, 0x73, 0x2e, 0x67, + 0x65, 0x6e, 0x65, 0x72, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x2e, 0x76, 0x31, 0x2e, 0x47, 0x75, 0x69, + 0x64, 0x61, 0x6e, 0x63, 0x65, 0x53, 0x63, 0x68, 0x65, 0x64, 0x75, 0x6c, 0x65, 0x50, 0x61, 0x72, + 0x61, 0x6d, 0x65, 0x74, 0x65, 0x72, 0x73, 0x52, 0x08, 0x73, 0x63, 0x68, 0x65, 0x64, 0x75, 0x6c, + 0x65, 0x12, 0x57, 0x0a, 0x07, 0x63, 0x75, 0x74, 0x6f, 0x75, 0x74, 0x73, 0x18, 0x05, 0x20, 0x01, + 0x28, 0x0b, 0x32, 0x38, 0x2e, 0x73, 0x74, 0x61, 0x62, 0x69, 0x6c, 0x69, 0x74, 0x79, 0x61, 0x69, + 0x2e, 0x70, 0x6c, 0x61, 0x74, 0x66, 0x6f, 0x72, 0x6d, 0x61, 0x70, 0x69, 0x73, 0x2e, 0x67, 0x65, + 0x6e, 0x65, 0x72, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x2e, 0x76, 0x31, 0x2e, 0x43, 0x75, 0x74, 0x6f, + 0x75, 0x74, 0x50, 0x61, 0x72, 0x61, 0x6d, 0x65, 0x74, 0x65, 0x72, 0x73, 0x48, 0x01, 0x52, 0x07, + 0x63, 0x75, 0x74, 0x6f, 0x75, 0x74, 0x73, 0x88, 0x01, 0x01, 0x12, 0x4b, 0x0a, 0x06, 0x70, 0x72, + 0x6f, 0x6d, 0x70, 0x74, 0x18, 0x06, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x2e, 0x2e, 0x73, 0x74, 0x61, + 0x62, 0x69, 0x6c, 0x69, 0x74, 0x79, 0x61, 0x69, 0x2e, 0x70, 0x6c, 0x61, 0x74, 0x66, 0x6f, 0x72, + 0x6d, 0x61, 0x70, 0x69, 0x73, 0x2e, 0x67, 0x65, 0x6e, 0x65, 0x72, 0x61, 0x74, 0x69, 0x6f, 0x6e, + 0x2e, 0x76, 0x31, 0x2e, 0x50, 0x72, 0x6f, 0x6d, 0x70, 0x74, 0x48, 0x02, 0x52, 0x06, 0x70, 0x72, + 0x6f, 0x6d, 0x70, 0x74, 0x88, 0x01, 0x01, 0x42, 0x14, 0x0a, 0x12, 0x5f, 0x67, 0x75, 0x69, 0x64, + 0x61, 0x6e, 0x63, 0x65, 0x5f, 0x73, 0x74, 0x72, 0x65, 0x6e, 0x67, 0x74, 0x68, 0x42, 0x0a, 0x0a, + 0x08, 0x5f, 0x63, 0x75, 0x74, 0x6f, 0x75, 0x74, 0x73, 0x42, 0x09, 0x0a, 0x07, 0x5f, 0x70, 0x72, + 0x6f, 0x6d, 0x70, 0x74, 0x22, 0xd7, 0x01, 0x0a, 0x12, 0x47, 0x75, 0x69, 0x64, 0x61, 0x6e, 0x63, + 0x65, 0x50, 0x61, 0x72, 0x61, 0x6d, 0x65, 0x74, 0x65, 0x72, 0x73, 0x12, 0x5f, 0x0a, 0x0f, 0x67, + 0x75, 0x69, 0x64, 0x61, 0x6e, 0x63, 0x65, 0x5f, 0x70, 0x72, 0x65, 0x73, 0x65, 0x74, 0x18, 0x01, + 0x20, 0x01, 0x28, 0x0e, 0x32, 0x36, 0x2e, 0x73, 0x74, 0x61, 0x62, 0x69, 0x6c, 0x69, 0x74, 0x79, + 0x61, 0x69, 0x2e, 0x70, 0x6c, 0x61, 0x74, 0x66, 0x6f, 0x72, 0x6d, 0x61, 0x70, 0x69, 0x73, 0x2e, + 0x67, 0x65, 0x6e, 0x65, 0x72, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x2e, 0x76, 0x31, 0x2e, 0x47, 0x75, + 0x69, 0x64, 0x61, 0x6e, 0x63, 0x65, 0x50, 0x72, 0x65, 0x73, 0x65, 0x74, 0x52, 0x0e, 0x67, 0x75, + 0x69, 0x64, 0x61, 0x6e, 0x63, 0x65, 0x50, 0x72, 0x65, 0x73, 0x65, 0x74, 0x12, 0x60, 0x0a, 0x09, + 0x69, 0x6e, 0x73, 0x74, 0x61, 0x6e, 0x63, 0x65, 0x73, 0x18, 0x02, 0x20, 0x03, 0x28, 0x0b, 0x32, + 0x42, 0x2e, 0x73, 0x74, 0x61, 0x62, 0x69, 0x6c, 0x69, 0x74, 0x79, 0x61, 0x69, 0x2e, 0x70, 0x6c, + 0x61, 0x74, 0x66, 0x6f, 0x72, 0x6d, 0x61, 0x70, 0x69, 0x73, 0x2e, 0x67, 0x65, 0x6e, 0x65, 0x72, + 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x2e, 0x76, 0x31, 0x2e, 0x47, 0x75, 0x69, 0x64, 0x61, 0x6e, 0x63, + 0x65, 0x49, 0x6e, 0x73, 0x74, 0x61, 0x6e, 0x63, 0x65, 0x50, 0x61, 0x72, 0x61, 0x6d, 0x65, 0x74, + 0x65, 0x72, 0x73, 0x52, 0x09, 0x69, 0x6e, 0x73, 0x74, 0x61, 0x6e, 0x63, 0x65, 0x73, 0x22, 0xc1, + 0x01, 0x0a, 0x0d, 0x54, 0x72, 0x61, 0x6e, 0x73, 0x66, 0x6f, 0x72, 0x6d, 0x54, 0x79, 0x70, 0x65, + 0x12, 0x58, 0x0a, 0x09, 0x64, 0x69, 0x66, 0x66, 0x75, 0x73, 0x69, 0x6f, 0x6e, 0x18, 0x01, 0x20, + 0x01, 0x28, 0x0e, 0x32, 0x38, 0x2e, 0x73, 0x74, 0x61, 0x62, 0x69, 0x6c, 0x69, 0x74, 0x79, 0x61, + 0x69, 0x2e, 0x70, 0x6c, 0x61, 0x74, 0x66, 0x6f, 0x72, 0x6d, 0x61, 0x70, 0x69, 0x73, 0x2e, 0x67, + 0x65, 0x6e, 0x65, 0x72, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x2e, 0x76, 0x31, 0x2e, 0x44, 0x69, 0x66, + 0x66, 0x75, 0x73, 0x69, 0x6f, 0x6e, 0x53, 0x61, 0x6d, 0x70, 0x6c, 0x65, 0x72, 0x48, 0x00, 0x52, + 0x09, 0x64, 0x69, 0x66, 0x66, 0x75, 0x73, 0x69, 0x6f, 0x6e, 0x12, 0x4e, 0x0a, 0x08, 0x75, 0x70, + 0x73, 0x63, 0x61, 0x6c, 0x65, 0x72, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0e, 0x32, 0x30, 0x2e, 0x73, + 0x74, 0x61, 0x62, 0x69, 0x6c, 0x69, 0x74, 0x79, 0x61, 0x69, 0x2e, 0x70, 0x6c, 0x61, 0x74, 0x66, + 0x6f, 0x72, 0x6d, 0x61, 0x70, 0x69, 0x73, 0x2e, 0x67, 0x65, 0x6e, 0x65, 0x72, 0x61, 0x74, 0x69, + 0x6f, 0x6e, 0x2e, 0x76, 0x31, 0x2e, 0x55, 0x70, 0x73, 0x63, 0x61, 0x6c, 0x65, 0x72, 0x48, 0x00, + 0x52, 0x08, 0x75, 0x70, 0x73, 0x63, 0x61, 0x6c, 0x65, 0x72, 0x42, 0x06, 0x0a, 0x04, 0x74, 0x79, + 0x70, 0x65, 0x22, 0xfb, 0x01, 0x0a, 0x13, 0x54, 0x32, 0x49, 0x41, 0x64, 0x61, 0x70, 0x74, 0x65, + 0x72, 0x50, 0x61, 0x72, 0x61, 0x6d, 0x65, 0x74, 0x65, 0x72, 0x12, 0x55, 0x0a, 0x0c, 0x61, 0x64, + 0x61, 0x70, 0x74, 0x65, 0x72, 0x5f, 0x74, 0x79, 0x70, 0x65, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0e, + 0x32, 0x32, 0x2e, 0x73, 0x74, 0x61, 0x62, 0x69, 0x6c, 0x69, 0x74, 0x79, 0x61, 0x69, 0x2e, 0x70, + 0x6c, 0x61, 0x74, 0x66, 0x6f, 0x72, 0x6d, 0x61, 0x70, 0x69, 0x73, 0x2e, 0x67, 0x65, 0x6e, 0x65, + 0x72, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x2e, 0x76, 0x31, 0x2e, 0x54, 0x32, 0x49, 0x41, 0x64, 0x61, + 0x70, 0x74, 0x65, 0x72, 0x52, 0x0b, 0x61, 0x64, 0x61, 0x70, 0x74, 0x65, 0x72, 0x54, 0x79, 0x70, + 0x65, 0x12, 0x29, 0x0a, 0x10, 0x61, 0x64, 0x61, 0x70, 0x74, 0x65, 0x72, 0x5f, 0x73, 0x74, 0x72, + 0x65, 0x6e, 0x67, 0x74, 0x68, 0x18, 0x02, 0x20, 0x01, 0x28, 0x02, 0x52, 0x0f, 0x61, 0x64, 0x61, + 0x70, 0x74, 0x65, 0x72, 0x53, 0x74, 0x72, 0x65, 0x6e, 0x67, 0x74, 0x68, 0x12, 0x62, 0x0a, 0x11, + 0x61, 0x64, 0x61, 0x70, 0x74, 0x65, 0x72, 0x5f, 0x69, 0x6e, 0x69, 0x74, 0x5f, 0x74, 0x79, 0x70, + 0x65, 0x18, 0x03, 0x20, 0x01, 0x28, 0x0e, 0x32, 0x36, 0x2e, 0x73, 0x74, 0x61, 0x62, 0x69, 0x6c, + 0x69, 0x74, 0x79, 0x61, 0x69, 0x2e, 0x70, 0x6c, 0x61, 0x74, 0x66, 0x6f, 0x72, 0x6d, 0x61, 0x70, + 0x69, 0x73, 0x2e, 0x67, 0x65, 0x6e, 0x65, 0x72, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x2e, 0x76, 0x31, + 0x2e, 0x54, 0x32, 0x49, 0x41, 0x64, 0x61, 0x70, 0x74, 0x65, 0x72, 0x49, 0x6e, 0x69, 0x74, 0x52, + 0x0f, 0x61, 0x64, 0x61, 0x70, 0x74, 0x65, 0x72, 0x49, 0x6e, 0x69, 0x74, 0x54, 0x79, 0x70, 0x65, + 0x22, 0x82, 0x02, 0x0a, 0x1c, 0x43, 0x6f, 0x6e, 0x74, 0x65, 0x6e, 0x74, 0x43, 0x72, 0x65, 0x64, + 0x65, 0x6e, 0x74, 0x69, 0x61, 0x6c, 0x73, 0x50, 0x61, 0x72, 0x61, 0x6d, 0x65, 0x74, 0x65, 0x72, + 0x73, 0x12, 0x7b, 0x0a, 0x0e, 0x6d, 0x6f, 0x64, 0x65, 0x6c, 0x5f, 0x6d, 0x65, 0x74, 0x61, 0x64, + 0x61, 0x74, 0x61, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0e, 0x32, 0x52, 0x2e, 0x73, 0x74, 0x61, 0x62, + 0x69, 0x6c, 0x69, 0x74, 0x79, 0x61, 0x69, 0x2e, 0x70, 0x6c, 0x61, 0x74, 0x66, 0x6f, 0x72, 0x6d, + 0x61, 0x70, 0x69, 0x73, 0x2e, 0x67, 0x65, 0x6e, 0x65, 0x72, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x2e, + 0x76, 0x31, 0x2e, 0x43, 0x6f, 0x6e, 0x74, 0x65, 0x6e, 0x74, 0x43, 0x72, 0x65, 0x64, 0x65, 0x6e, + 0x74, 0x69, 0x61, 0x6c, 0x73, 0x50, 0x61, 0x72, 0x61, 0x6d, 0x65, 0x74, 0x65, 0x72, 0x73, 0x2e, + 0x4d, 0x6f, 0x64, 0x65, 0x6c, 0x4d, 0x65, 0x74, 0x61, 0x64, 0x61, 0x74, 0x61, 0x48, 0x00, 0x52, + 0x0d, 0x6d, 0x6f, 0x64, 0x65, 0x6c, 0x4d, 0x65, 0x74, 0x61, 0x64, 0x61, 0x74, 0x61, 0x22, 0x57, + 0x0a, 0x0d, 0x4d, 0x6f, 0x64, 0x65, 0x6c, 0x4d, 0x65, 0x74, 0x61, 0x64, 0x61, 0x74, 0x61, 0x12, + 0x1e, 0x0a, 0x1a, 0x4d, 0x4f, 0x44, 0x45, 0x4c, 0x5f, 0x4d, 0x45, 0x54, 0x41, 0x44, 0x41, 0x54, + 0x41, 0x5f, 0x55, 0x4e, 0x53, 0x50, 0x45, 0x43, 0x49, 0x46, 0x49, 0x45, 0x44, 0x10, 0x00, 0x12, + 0x26, 0x0a, 0x22, 0x4d, 0x4f, 0x44, 0x45, 0x4c, 0x5f, 0x4d, 0x45, 0x54, 0x41, 0x44, 0x41, 0x54, + 0x41, 0x5f, 0x53, 0x49, 0x47, 0x4e, 0x5f, 0x57, 0x49, 0x54, 0x48, 0x5f, 0x45, 0x4e, 0x47, 0x49, + 0x4e, 0x45, 0x5f, 0x49, 0x44, 0x10, 0x01, 0x42, 0x0c, 0x0a, 0x0a, 0x70, 0x61, 0x72, 0x61, 0x6d, + 0x65, 0x74, 0x65, 0x72, 0x73, 0x22, 0x59, 0x0a, 0x14, 0x46, 0x69, 0x6e, 0x65, 0x54, 0x75, 0x6e, + 0x69, 0x6e, 0x67, 0x50, 0x61, 0x72, 0x61, 0x6d, 0x65, 0x74, 0x65, 0x72, 0x73, 0x12, 0x19, 0x0a, + 0x08, 0x6d, 0x6f, 0x64, 0x65, 0x6c, 0x5f, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, + 0x07, 0x6d, 0x6f, 0x64, 0x65, 0x6c, 0x49, 0x64, 0x12, 0x1b, 0x0a, 0x06, 0x77, 0x65, 0x69, 0x67, + 0x68, 0x74, 0x18, 0x02, 0x20, 0x01, 0x28, 0x02, 0x48, 0x00, 0x52, 0x06, 0x77, 0x65, 0x69, 0x67, + 0x68, 0x74, 0x88, 0x01, 0x01, 0x42, 0x09, 0x0a, 0x07, 0x5f, 0x77, 0x65, 0x69, 0x67, 0x68, 0x74, + 0x22, 0xb4, 0x08, 0x0a, 0x0f, 0x49, 0x6d, 0x61, 0x67, 0x65, 0x50, 0x61, 0x72, 0x61, 0x6d, 0x65, + 0x74, 0x65, 0x72, 0x73, 0x12, 0x1b, 0x0a, 0x06, 0x68, 0x65, 0x69, 0x67, 0x68, 0x74, 0x18, 0x01, + 0x20, 0x01, 0x28, 0x04, 0x48, 0x00, 0x52, 0x06, 0x68, 0x65, 0x69, 0x67, 0x68, 0x74, 0x88, 0x01, + 0x01, 0x12, 0x19, 0x0a, 0x05, 0x77, 0x69, 0x64, 0x74, 0x68, 0x18, 0x02, 0x20, 0x01, 0x28, 0x04, + 0x48, 0x01, 0x52, 0x05, 0x77, 0x69, 0x64, 0x74, 0x68, 0x88, 0x01, 0x01, 0x12, 0x12, 0x0a, 0x04, + 0x73, 0x65, 0x65, 0x64, 0x18, 0x03, 0x20, 0x03, 0x28, 0x0d, 0x52, 0x04, 0x73, 0x65, 0x65, 0x64, + 0x12, 0x1d, 0x0a, 0x07, 0x73, 0x61, 0x6d, 0x70, 0x6c, 0x65, 0x73, 0x18, 0x04, 0x20, 0x01, 0x28, + 0x04, 0x48, 0x02, 0x52, 0x07, 0x73, 0x61, 0x6d, 0x70, 0x6c, 0x65, 0x73, 0x88, 0x01, 0x01, 0x12, + 0x19, 0x0a, 0x05, 0x73, 0x74, 0x65, 0x70, 0x73, 0x18, 0x05, 0x20, 0x01, 0x28, 0x04, 0x48, 0x03, + 0x52, 0x05, 0x73, 0x74, 0x65, 0x70, 0x73, 0x88, 0x01, 0x01, 0x12, 0x58, 0x0a, 0x09, 0x74, 0x72, + 0x61, 0x6e, 0x73, 0x66, 0x6f, 0x72, 0x6d, 0x18, 0x06, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x35, 0x2e, + 0x73, 0x74, 0x61, 0x62, 0x69, 0x6c, 0x69, 0x74, 0x79, 0x61, 0x69, 0x2e, 0x70, 0x6c, 0x61, 0x74, + 0x66, 0x6f, 0x72, 0x6d, 0x61, 0x70, 0x69, 0x73, 0x2e, 0x67, 0x65, 0x6e, 0x65, 0x72, 0x61, 0x74, + 0x69, 0x6f, 0x6e, 0x2e, 0x76, 0x31, 0x2e, 0x54, 0x72, 0x61, 0x6e, 0x73, 0x66, 0x6f, 0x72, 0x6d, + 0x54, 0x79, 0x70, 0x65, 0x48, 0x04, 0x52, 0x09, 0x74, 0x72, 0x61, 0x6e, 0x73, 0x66, 0x6f, 0x72, + 0x6d, 0x88, 0x01, 0x01, 0x12, 0x55, 0x0a, 0x0a, 0x70, 0x61, 0x72, 0x61, 0x6d, 0x65, 0x74, 0x65, + 0x72, 0x73, 0x18, 0x07, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x35, 0x2e, 0x73, 0x74, 0x61, 0x62, 0x69, + 0x6c, 0x69, 0x74, 0x79, 0x61, 0x69, 0x2e, 0x70, 0x6c, 0x61, 0x74, 0x66, 0x6f, 0x72, 0x6d, 0x61, + 0x70, 0x69, 0x73, 0x2e, 0x67, 0x65, 0x6e, 0x65, 0x72, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x2e, 0x76, + 0x31, 0x2e, 0x53, 0x74, 0x65, 0x70, 0x50, 0x61, 0x72, 0x61, 0x6d, 0x65, 0x74, 0x65, 0x72, 0x52, + 0x0a, 0x70, 0x61, 0x72, 0x61, 0x6d, 0x65, 0x74, 0x65, 0x72, 0x73, 0x12, 0x65, 0x0a, 0x10, 0x6d, + 0x61, 0x73, 0x6b, 0x65, 0x64, 0x5f, 0x61, 0x72, 0x65, 0x61, 0x5f, 0x69, 0x6e, 0x69, 0x74, 0x18, + 0x08, 0x20, 0x01, 0x28, 0x0e, 0x32, 0x36, 0x2e, 0x73, 0x74, 0x61, 0x62, 0x69, 0x6c, 0x69, 0x74, + 0x79, 0x61, 0x69, 0x2e, 0x70, 0x6c, 0x61, 0x74, 0x66, 0x6f, 0x72, 0x6d, 0x61, 0x70, 0x69, 0x73, + 0x2e, 0x67, 0x65, 0x6e, 0x65, 0x72, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x2e, 0x76, 0x31, 0x2e, 0x4d, + 0x61, 0x73, 0x6b, 0x65, 0x64, 0x41, 0x72, 0x65, 0x61, 0x49, 0x6e, 0x69, 0x74, 0x48, 0x05, 0x52, + 0x0e, 0x6d, 0x61, 0x73, 0x6b, 0x65, 0x64, 0x41, 0x72, 0x65, 0x61, 0x49, 0x6e, 0x69, 0x74, 0x88, + 0x01, 0x01, 0x12, 0x5e, 0x0a, 0x0d, 0x77, 0x65, 0x69, 0x67, 0x68, 0x74, 0x5f, 0x6d, 0x65, 0x74, + 0x68, 0x6f, 0x64, 0x18, 0x09, 0x20, 0x01, 0x28, 0x0e, 0x32, 0x34, 0x2e, 0x73, 0x74, 0x61, 0x62, + 0x69, 0x6c, 0x69, 0x74, 0x79, 0x61, 0x69, 0x2e, 0x70, 0x6c, 0x61, 0x74, 0x66, 0x6f, 0x72, 0x6d, + 0x61, 0x70, 0x69, 0x73, 0x2e, 0x67, 0x65, 0x6e, 0x65, 0x72, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x2e, + 0x76, 0x31, 0x2e, 0x57, 0x65, 0x69, 0x67, 0x68, 0x74, 0x4d, 0x65, 0x74, 0x68, 0x6f, 0x64, 0x48, + 0x06, 0x52, 0x0c, 0x77, 0x65, 0x69, 0x67, 0x68, 0x74, 0x4d, 0x65, 0x74, 0x68, 0x6f, 0x64, 0x88, + 0x01, 0x01, 0x12, 0x1f, 0x0a, 0x08, 0x71, 0x75, 0x61, 0x6e, 0x74, 0x69, 0x7a, 0x65, 0x18, 0x0a, + 0x20, 0x01, 0x28, 0x08, 0x48, 0x07, 0x52, 0x08, 0x71, 0x75, 0x61, 0x6e, 0x74, 0x69, 0x7a, 0x65, + 0x88, 0x01, 0x01, 0x12, 0x5a, 0x0a, 0x07, 0x61, 0x64, 0x61, 0x70, 0x74, 0x65, 0x72, 0x18, 0x0c, + 0x20, 0x01, 0x28, 0x0b, 0x32, 0x3b, 0x2e, 0x73, 0x74, 0x61, 0x62, 0x69, 0x6c, 0x69, 0x74, 0x79, + 0x61, 0x69, 0x2e, 0x70, 0x6c, 0x61, 0x74, 0x66, 0x6f, 0x72, 0x6d, 0x61, 0x70, 0x69, 0x73, 0x2e, + 0x67, 0x65, 0x6e, 0x65, 0x72, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x2e, 0x76, 0x31, 0x2e, 0x54, 0x32, + 0x49, 0x41, 0x64, 0x61, 0x70, 0x74, 0x65, 0x72, 0x50, 0x61, 0x72, 0x61, 0x6d, 0x65, 0x74, 0x65, + 0x72, 0x48, 0x08, 0x52, 0x07, 0x61, 0x64, 0x61, 0x70, 0x74, 0x65, 0x72, 0x88, 0x01, 0x01, 0x12, + 0x72, 0x0a, 0x16, 0x66, 0x69, 0x6e, 0x65, 0x5f, 0x74, 0x75, 0x6e, 0x69, 0x6e, 0x67, 0x5f, 0x70, + 0x61, 0x72, 0x61, 0x6d, 0x65, 0x74, 0x65, 0x72, 0x73, 0x18, 0x0d, 0x20, 0x03, 0x28, 0x0b, 0x32, + 0x3c, 0x2e, 0x73, 0x74, 0x61, 0x62, 0x69, 0x6c, 0x69, 0x74, 0x79, 0x61, 0x69, 0x2e, 0x70, 0x6c, + 0x61, 0x74, 0x66, 0x6f, 0x72, 0x6d, 0x61, 0x70, 0x69, 0x73, 0x2e, 0x67, 0x65, 0x6e, 0x65, 0x72, + 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x2e, 0x76, 0x31, 0x2e, 0x46, 0x69, 0x6e, 0x65, 0x54, 0x75, 0x6e, + 0x69, 0x6e, 0x67, 0x50, 0x61, 0x72, 0x61, 0x6d, 0x65, 0x74, 0x65, 0x72, 0x73, 0x52, 0x14, 0x66, + 0x69, 0x6e, 0x65, 0x54, 0x75, 0x6e, 0x69, 0x6e, 0x67, 0x50, 0x61, 0x72, 0x61, 0x6d, 0x65, 0x74, + 0x65, 0x72, 0x73, 0x12, 0x8f, 0x01, 0x0a, 0x1e, 0x63, 0x6f, 0x6e, 0x74, 0x65, 0x6e, 0x74, 0x5f, + 0x63, 0x72, 0x65, 0x64, 0x65, 0x6e, 0x74, 0x69, 0x61, 0x6c, 0x73, 0x5f, 0x70, 0x61, 0x72, 0x61, + 0x6d, 0x65, 0x74, 0x65, 0x72, 0x73, 0x18, 0x0e, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x44, 0x2e, 0x73, + 0x74, 0x61, 0x62, 0x69, 0x6c, 0x69, 0x74, 0x79, 0x61, 0x69, 0x2e, 0x70, 0x6c, 0x61, 0x74, 0x66, + 0x6f, 0x72, 0x6d, 0x61, 0x70, 0x69, 0x73, 0x2e, 0x67, 0x65, 0x6e, 0x65, 0x72, 0x61, 0x74, 0x69, + 0x6f, 0x6e, 0x2e, 0x76, 0x31, 0x2e, 0x43, 0x6f, 0x6e, 0x74, 0x65, 0x6e, 0x74, 0x43, 0x72, 0x65, + 0x64, 0x65, 0x6e, 0x74, 0x69, 0x61, 0x6c, 0x73, 0x50, 0x61, 0x72, 0x61, 0x6d, 0x65, 0x74, 0x65, + 0x72, 0x73, 0x48, 0x09, 0x52, 0x1c, 0x63, 0x6f, 0x6e, 0x74, 0x65, 0x6e, 0x74, 0x43, 0x72, 0x65, + 0x64, 0x65, 0x6e, 0x74, 0x69, 0x61, 0x6c, 0x73, 0x50, 0x61, 0x72, 0x61, 0x6d, 0x65, 0x74, 0x65, + 0x72, 0x73, 0x88, 0x01, 0x01, 0x42, 0x09, 0x0a, 0x07, 0x5f, 0x68, 0x65, 0x69, 0x67, 0x68, 0x74, + 0x42, 0x08, 0x0a, 0x06, 0x5f, 0x77, 0x69, 0x64, 0x74, 0x68, 0x42, 0x0a, 0x0a, 0x08, 0x5f, 0x73, + 0x61, 0x6d, 0x70, 0x6c, 0x65, 0x73, 0x42, 0x08, 0x0a, 0x06, 0x5f, 0x73, 0x74, 0x65, 0x70, 0x73, + 0x42, 0x0c, 0x0a, 0x0a, 0x5f, 0x74, 0x72, 0x61, 0x6e, 0x73, 0x66, 0x6f, 0x72, 0x6d, 0x42, 0x13, + 0x0a, 0x11, 0x5f, 0x6d, 0x61, 0x73, 0x6b, 0x65, 0x64, 0x5f, 0x61, 0x72, 0x65, 0x61, 0x5f, 0x69, + 0x6e, 0x69, 0x74, 0x42, 0x10, 0x0a, 0x0e, 0x5f, 0x77, 0x65, 0x69, 0x67, 0x68, 0x74, 0x5f, 0x6d, + 0x65, 0x74, 0x68, 0x6f, 0x64, 0x42, 0x0b, 0x0a, 0x09, 0x5f, 0x71, 0x75, 0x61, 0x6e, 0x74, 0x69, + 0x7a, 0x65, 0x42, 0x0a, 0x0a, 0x08, 0x5f, 0x61, 0x64, 0x61, 0x70, 0x74, 0x65, 0x72, 0x42, 0x21, + 0x0a, 0x1f, 0x5f, 0x63, 0x6f, 0x6e, 0x74, 0x65, 0x6e, 0x74, 0x5f, 0x63, 0x72, 0x65, 0x64, 0x65, + 0x6e, 0x74, 0x69, 0x61, 0x6c, 0x73, 0x5f, 0x70, 0x61, 0x72, 0x61, 0x6d, 0x65, 0x74, 0x65, 0x72, + 0x73, 0x4a, 0x04, 0x08, 0x0b, 0x10, 0x0c, 0x22, 0x5e, 0x0a, 0x11, 0x43, 0x6c, 0x61, 0x73, 0x73, + 0x69, 0x66, 0x69, 0x65, 0x72, 0x43, 0x6f, 0x6e, 0x63, 0x65, 0x70, 0x74, 0x12, 0x18, 0x0a, 0x07, + 0x63, 0x6f, 0x6e, 0x63, 0x65, 0x70, 0x74, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x07, 0x63, + 0x6f, 0x6e, 0x63, 0x65, 0x70, 0x74, 0x12, 0x21, 0x0a, 0x09, 0x74, 0x68, 0x72, 0x65, 0x73, 0x68, + 0x6f, 0x6c, 0x64, 0x18, 0x02, 0x20, 0x01, 0x28, 0x02, 0x48, 0x00, 0x52, 0x09, 0x74, 0x68, 0x72, + 0x65, 0x73, 0x68, 0x6f, 0x6c, 0x64, 0x88, 0x01, 0x01, 0x42, 0x0c, 0x0a, 0x0a, 0x5f, 0x74, 0x68, + 0x72, 0x65, 0x73, 0x68, 0x6f, 0x6c, 0x64, 0x22, 0x85, 0x03, 0x0a, 0x12, 0x43, 0x6c, 0x61, 0x73, + 0x73, 0x69, 0x66, 0x69, 0x65, 0x72, 0x43, 0x61, 0x74, 0x65, 0x67, 0x6f, 0x72, 0x79, 0x12, 0x12, + 0x0a, 0x04, 0x6e, 0x61, 0x6d, 0x65, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x04, 0x6e, 0x61, + 0x6d, 0x65, 0x12, 0x55, 0x0a, 0x08, 0x63, 0x6f, 0x6e, 0x63, 0x65, 0x70, 0x74, 0x73, 0x18, 0x02, + 0x20, 0x03, 0x28, 0x0b, 0x32, 0x39, 0x2e, 0x73, 0x74, 0x61, 0x62, 0x69, 0x6c, 0x69, 0x74, 0x79, + 0x61, 0x69, 0x2e, 0x70, 0x6c, 0x61, 0x74, 0x66, 0x6f, 0x72, 0x6d, 0x61, 0x70, 0x69, 0x73, 0x2e, + 0x67, 0x65, 0x6e, 0x65, 0x72, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x2e, 0x76, 0x31, 0x2e, 0x43, 0x6c, + 0x61, 0x73, 0x73, 0x69, 0x66, 0x69, 0x65, 0x72, 0x43, 0x6f, 0x6e, 0x63, 0x65, 0x70, 0x74, 0x52, + 0x08, 0x63, 0x6f, 0x6e, 0x63, 0x65, 0x70, 0x74, 0x73, 0x12, 0x23, 0x0a, 0x0a, 0x61, 0x64, 0x6a, + 0x75, 0x73, 0x74, 0x6d, 0x65, 0x6e, 0x74, 0x18, 0x03, 0x20, 0x01, 0x28, 0x02, 0x48, 0x00, 0x52, + 0x0a, 0x61, 0x64, 0x6a, 0x75, 0x73, 0x74, 0x6d, 0x65, 0x6e, 0x74, 0x88, 0x01, 0x01, 0x12, 0x4b, + 0x0a, 0x06, 0x61, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x18, 0x04, 0x20, 0x01, 0x28, 0x0e, 0x32, 0x2e, + 0x2e, 0x73, 0x74, 0x61, 0x62, 0x69, 0x6c, 0x69, 0x74, 0x79, 0x61, 0x69, 0x2e, 0x70, 0x6c, 0x61, + 0x74, 0x66, 0x6f, 0x72, 0x6d, 0x61, 0x70, 0x69, 0x73, 0x2e, 0x67, 0x65, 0x6e, 0x65, 0x72, 0x61, + 0x74, 0x69, 0x6f, 0x6e, 0x2e, 0x76, 0x31, 0x2e, 0x41, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x48, 0x01, + 0x52, 0x06, 0x61, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x88, 0x01, 0x01, 0x12, 0x64, 0x0a, 0x0f, 0x63, + 0x6c, 0x61, 0x73, 0x73, 0x69, 0x66, 0x69, 0x65, 0x72, 0x5f, 0x6d, 0x6f, 0x64, 0x65, 0x18, 0x05, + 0x20, 0x01, 0x28, 0x0e, 0x32, 0x36, 0x2e, 0x73, 0x74, 0x61, 0x62, 0x69, 0x6c, 0x69, 0x74, 0x79, + 0x61, 0x69, 0x2e, 0x70, 0x6c, 0x61, 0x74, 0x66, 0x6f, 0x72, 0x6d, 0x61, 0x70, 0x69, 0x73, 0x2e, + 0x67, 0x65, 0x6e, 0x65, 0x72, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x2e, 0x76, 0x31, 0x2e, 0x43, 0x6c, + 0x61, 0x73, 0x73, 0x69, 0x66, 0x69, 0x65, 0x72, 0x4d, 0x6f, 0x64, 0x65, 0x48, 0x02, 0x52, 0x0e, + 0x63, 0x6c, 0x61, 0x73, 0x73, 0x69, 0x66, 0x69, 0x65, 0x72, 0x4d, 0x6f, 0x64, 0x65, 0x88, 0x01, + 0x01, 0x42, 0x0d, 0x0a, 0x0b, 0x5f, 0x61, 0x64, 0x6a, 0x75, 0x73, 0x74, 0x6d, 0x65, 0x6e, 0x74, + 0x42, 0x09, 0x0a, 0x07, 0x5f, 0x61, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x42, 0x12, 0x0a, 0x10, 0x5f, + 0x63, 0x6c, 0x61, 0x73, 0x73, 0x69, 0x66, 0x69, 0x65, 0x72, 0x5f, 0x6d, 0x6f, 0x64, 0x65, 0x22, + 0xba, 0x02, 0x0a, 0x14, 0x43, 0x6c, 0x61, 0x73, 0x73, 0x69, 0x66, 0x69, 0x65, 0x72, 0x50, 0x61, + 0x72, 0x61, 0x6d, 0x65, 0x74, 0x65, 0x72, 0x73, 0x12, 0x5a, 0x0a, 0x0a, 0x63, 0x61, 0x74, 0x65, + 0x67, 0x6f, 0x72, 0x69, 0x65, 0x73, 0x18, 0x01, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x3a, 0x2e, 0x73, + 0x74, 0x61, 0x62, 0x69, 0x6c, 0x69, 0x74, 0x79, 0x61, 0x69, 0x2e, 0x70, 0x6c, 0x61, 0x74, 0x66, + 0x6f, 0x72, 0x6d, 0x61, 0x70, 0x69, 0x73, 0x2e, 0x67, 0x65, 0x6e, 0x65, 0x72, 0x61, 0x74, 0x69, + 0x6f, 0x6e, 0x2e, 0x76, 0x31, 0x2e, 0x43, 0x6c, 0x61, 0x73, 0x73, 0x69, 0x66, 0x69, 0x65, 0x72, + 0x43, 0x61, 0x74, 0x65, 0x67, 0x6f, 0x72, 0x79, 0x52, 0x0a, 0x63, 0x61, 0x74, 0x65, 0x67, 0x6f, + 0x72, 0x69, 0x65, 0x73, 0x12, 0x54, 0x0a, 0x07, 0x65, 0x78, 0x63, 0x65, 0x65, 0x64, 0x73, 0x18, + 0x02, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x3a, 0x2e, 0x73, 0x74, 0x61, 0x62, 0x69, 0x6c, 0x69, 0x74, + 0x79, 0x61, 0x69, 0x2e, 0x70, 0x6c, 0x61, 0x74, 0x66, 0x6f, 0x72, 0x6d, 0x61, 0x70, 0x69, 0x73, + 0x2e, 0x67, 0x65, 0x6e, 0x65, 0x72, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x2e, 0x76, 0x31, 0x2e, 0x43, + 0x6c, 0x61, 0x73, 0x73, 0x69, 0x66, 0x69, 0x65, 0x72, 0x43, 0x61, 0x74, 0x65, 0x67, 0x6f, 0x72, + 0x79, 0x52, 0x07, 0x65, 0x78, 0x63, 0x65, 0x65, 0x64, 0x73, 0x12, 0x5c, 0x0a, 0x0f, 0x72, 0x65, + 0x61, 0x6c, 0x69, 0x7a, 0x65, 0x64, 0x5f, 0x61, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x18, 0x03, 0x20, + 0x01, 0x28, 0x0e, 0x32, 0x2e, 0x2e, 0x73, 0x74, 0x61, 0x62, 0x69, 0x6c, 0x69, 0x74, 0x79, 0x61, + 0x69, 0x2e, 0x70, 0x6c, 0x61, 0x74, 0x66, 0x6f, 0x72, 0x6d, 0x61, 0x70, 0x69, 0x73, 0x2e, 0x67, + 0x65, 0x6e, 0x65, 0x72, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x2e, 0x76, 0x31, 0x2e, 0x41, 0x63, 0x74, + 0x69, 0x6f, 0x6e, 0x48, 0x00, 0x52, 0x0e, 0x72, 0x65, 0x61, 0x6c, 0x69, 0x7a, 0x65, 0x64, 0x41, + 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x88, 0x01, 0x01, 0x42, 0x12, 0x0a, 0x10, 0x5f, 0x72, 0x65, 0x61, + 0x6c, 0x69, 0x7a, 0x65, 0x64, 0x5f, 0x61, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x22, 0x8a, 0x01, 0x0a, + 0x15, 0x49, 0x6e, 0x74, 0x65, 0x72, 0x70, 0x6f, 0x6c, 0x61, 0x74, 0x65, 0x50, 0x61, 0x72, 0x61, + 0x6d, 0x65, 0x74, 0x65, 0x72, 0x73, 0x12, 0x16, 0x0a, 0x06, 0x72, 0x61, 0x74, 0x69, 0x6f, 0x73, + 0x18, 0x01, 0x20, 0x03, 0x28, 0x02, 0x52, 0x06, 0x72, 0x61, 0x74, 0x69, 0x6f, 0x73, 0x12, 0x50, + 0x0a, 0x04, 0x6d, 0x6f, 0x64, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0e, 0x32, 0x37, 0x2e, 0x73, + 0x74, 0x61, 0x62, 0x69, 0x6c, 0x69, 0x74, 0x79, 0x61, 0x69, 0x2e, 0x70, 0x6c, 0x61, 0x74, 0x66, + 0x6f, 0x72, 0x6d, 0x61, 0x70, 0x69, 0x73, 0x2e, 0x67, 0x65, 0x6e, 0x65, 0x72, 0x61, 0x74, 0x69, + 0x6f, 0x6e, 0x2e, 0x76, 0x31, 0x2e, 0x49, 0x6e, 0x74, 0x65, 0x72, 0x70, 0x6f, 0x6c, 0x61, 0x74, + 0x65, 0x4d, 0x6f, 0x64, 0x65, 0x48, 0x00, 0x52, 0x04, 0x6d, 0x6f, 0x64, 0x65, 0x88, 0x01, 0x01, + 0x42, 0x07, 0x0a, 0x05, 0x5f, 0x6d, 0x6f, 0x64, 0x65, 0x22, 0xbb, 0x04, 0x0a, 0x14, 0x54, 0x72, + 0x61, 0x6e, 0x73, 0x66, 0x6f, 0x72, 0x6d, 0x43, 0x6f, 0x6c, 0x6f, 0x72, 0x41, 0x64, 0x6a, 0x75, + 0x73, 0x74, 0x12, 0x23, 0x0a, 0x0a, 0x62, 0x72, 0x69, 0x67, 0x68, 0x74, 0x6e, 0x65, 0x73, 0x73, + 0x18, 0x01, 0x20, 0x01, 0x28, 0x02, 0x48, 0x00, 0x52, 0x0a, 0x62, 0x72, 0x69, 0x67, 0x68, 0x74, + 0x6e, 0x65, 0x73, 0x73, 0x88, 0x01, 0x01, 0x12, 0x1f, 0x0a, 0x08, 0x63, 0x6f, 0x6e, 0x74, 0x72, + 0x61, 0x73, 0x74, 0x18, 0x02, 0x20, 0x01, 0x28, 0x02, 0x48, 0x01, 0x52, 0x08, 0x63, 0x6f, 0x6e, + 0x74, 0x72, 0x61, 0x73, 0x74, 0x88, 0x01, 0x01, 0x12, 0x15, 0x0a, 0x03, 0x68, 0x75, 0x65, 0x18, + 0x03, 0x20, 0x01, 0x28, 0x02, 0x48, 0x02, 0x52, 0x03, 0x68, 0x75, 0x65, 0x88, 0x01, 0x01, 0x12, + 0x23, 0x0a, 0x0a, 0x73, 0x61, 0x74, 0x75, 0x72, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x18, 0x04, 0x20, + 0x01, 0x28, 0x02, 0x48, 0x03, 0x52, 0x0a, 0x73, 0x61, 0x74, 0x75, 0x72, 0x61, 0x74, 0x69, 0x6f, + 0x6e, 0x88, 0x01, 0x01, 0x12, 0x21, 0x0a, 0x09, 0x6c, 0x69, 0x67, 0x68, 0x74, 0x6e, 0x65, 0x73, + 0x73, 0x18, 0x05, 0x20, 0x01, 0x28, 0x02, 0x48, 0x04, 0x52, 0x09, 0x6c, 0x69, 0x67, 0x68, 0x74, + 0x6e, 0x65, 0x73, 0x73, 0x88, 0x01, 0x01, 0x12, 0x56, 0x0a, 0x0b, 0x6d, 0x61, 0x74, 0x63, 0x68, + 0x5f, 0x69, 0x6d, 0x61, 0x67, 0x65, 0x18, 0x06, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x30, 0x2e, 0x73, + 0x74, 0x61, 0x62, 0x69, 0x6c, 0x69, 0x74, 0x79, 0x61, 0x69, 0x2e, 0x70, 0x6c, 0x61, 0x74, 0x66, + 0x6f, 0x72, 0x6d, 0x61, 0x70, 0x69, 0x73, 0x2e, 0x67, 0x65, 0x6e, 0x65, 0x72, 0x61, 0x74, 0x69, + 0x6f, 0x6e, 0x2e, 0x76, 0x31, 0x2e, 0x41, 0x72, 0x74, 0x69, 0x66, 0x61, 0x63, 0x74, 0x48, 0x05, + 0x52, 0x0a, 0x6d, 0x61, 0x74, 0x63, 0x68, 0x49, 0x6d, 0x61, 0x67, 0x65, 0x88, 0x01, 0x01, 0x12, + 0x5a, 0x0a, 0x0a, 0x6d, 0x61, 0x74, 0x63, 0x68, 0x5f, 0x6d, 0x6f, 0x64, 0x65, 0x18, 0x07, 0x20, + 0x01, 0x28, 0x0e, 0x32, 0x36, 0x2e, 0x73, 0x74, 0x61, 0x62, 0x69, 0x6c, 0x69, 0x74, 0x79, 0x61, + 0x69, 0x2e, 0x70, 0x6c, 0x61, 0x74, 0x66, 0x6f, 0x72, 0x6d, 0x61, 0x70, 0x69, 0x73, 0x2e, 0x67, + 0x65, 0x6e, 0x65, 0x72, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x2e, 0x76, 0x31, 0x2e, 0x43, 0x6f, 0x6c, + 0x6f, 0x72, 0x4d, 0x61, 0x74, 0x63, 0x68, 0x4d, 0x6f, 0x64, 0x65, 0x48, 0x06, 0x52, 0x09, 0x6d, + 0x61, 0x74, 0x63, 0x68, 0x4d, 0x6f, 0x64, 0x65, 0x88, 0x01, 0x01, 0x12, 0x26, 0x0a, 0x0c, 0x6e, + 0x6f, 0x69, 0x73, 0x65, 0x5f, 0x61, 0x6d, 0x6f, 0x75, 0x6e, 0x74, 0x18, 0x08, 0x20, 0x01, 0x28, + 0x02, 0x48, 0x07, 0x52, 0x0b, 0x6e, 0x6f, 0x69, 0x73, 0x65, 0x41, 0x6d, 0x6f, 0x75, 0x6e, 0x74, + 0x88, 0x01, 0x01, 0x12, 0x22, 0x0a, 0x0a, 0x6e, 0x6f, 0x69, 0x73, 0x65, 0x5f, 0x73, 0x65, 0x65, + 0x64, 0x18, 0x09, 0x20, 0x01, 0x28, 0x0d, 0x48, 0x08, 0x52, 0x09, 0x6e, 0x6f, 0x69, 0x73, 0x65, + 0x53, 0x65, 0x65, 0x64, 0x88, 0x01, 0x01, 0x42, 0x0d, 0x0a, 0x0b, 0x5f, 0x62, 0x72, 0x69, 0x67, + 0x68, 0x74, 0x6e, 0x65, 0x73, 0x73, 0x42, 0x0b, 0x0a, 0x09, 0x5f, 0x63, 0x6f, 0x6e, 0x74, 0x72, + 0x61, 0x73, 0x74, 0x42, 0x06, 0x0a, 0x04, 0x5f, 0x68, 0x75, 0x65, 0x42, 0x0d, 0x0a, 0x0b, 0x5f, + 0x73, 0x61, 0x74, 0x75, 0x72, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x42, 0x0c, 0x0a, 0x0a, 0x5f, 0x6c, + 0x69, 0x67, 0x68, 0x74, 0x6e, 0x65, 0x73, 0x73, 0x42, 0x0e, 0x0a, 0x0c, 0x5f, 0x6d, 0x61, 0x74, + 0x63, 0x68, 0x5f, 0x69, 0x6d, 0x61, 0x67, 0x65, 0x42, 0x0d, 0x0a, 0x0b, 0x5f, 0x6d, 0x61, 0x74, + 0x63, 0x68, 0x5f, 0x6d, 0x6f, 0x64, 0x65, 0x42, 0x0f, 0x0a, 0x0d, 0x5f, 0x6e, 0x6f, 0x69, 0x73, + 0x65, 0x5f, 0x61, 0x6d, 0x6f, 0x75, 0x6e, 0x74, 0x42, 0x0d, 0x0a, 0x0b, 0x5f, 0x6e, 0x6f, 0x69, + 0x73, 0x65, 0x5f, 0x73, 0x65, 0x65, 0x64, 0x22, 0xae, 0x01, 0x0a, 0x12, 0x54, 0x72, 0x61, 0x6e, + 0x73, 0x66, 0x6f, 0x72, 0x6d, 0x44, 0x65, 0x70, 0x74, 0x68, 0x43, 0x61, 0x6c, 0x63, 0x12, 0x26, + 0x0a, 0x0c, 0x62, 0x6c, 0x65, 0x6e, 0x64, 0x5f, 0x77, 0x65, 0x69, 0x67, 0x68, 0x74, 0x18, 0x01, + 0x20, 0x01, 0x28, 0x02, 0x48, 0x00, 0x52, 0x0b, 0x62, 0x6c, 0x65, 0x6e, 0x64, 0x57, 0x65, 0x69, + 0x67, 0x68, 0x74, 0x88, 0x01, 0x01, 0x12, 0x24, 0x0a, 0x0b, 0x62, 0x6c, 0x75, 0x72, 0x5f, 0x72, + 0x61, 0x64, 0x69, 0x75, 0x73, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0d, 0x48, 0x01, 0x52, 0x0a, 0x62, + 0x6c, 0x75, 0x72, 0x52, 0x61, 0x64, 0x69, 0x75, 0x73, 0x88, 0x01, 0x01, 0x12, 0x1d, 0x0a, 0x07, + 0x72, 0x65, 0x76, 0x65, 0x72, 0x73, 0x65, 0x18, 0x03, 0x20, 0x01, 0x28, 0x08, 0x48, 0x02, 0x52, + 0x07, 0x72, 0x65, 0x76, 0x65, 0x72, 0x73, 0x65, 0x88, 0x01, 0x01, 0x42, 0x0f, 0x0a, 0x0d, 0x5f, + 0x62, 0x6c, 0x65, 0x6e, 0x64, 0x5f, 0x77, 0x65, 0x69, 0x67, 0x68, 0x74, 0x42, 0x0e, 0x0a, 0x0c, + 0x5f, 0x62, 0x6c, 0x75, 0x72, 0x5f, 0x72, 0x61, 0x64, 0x69, 0x75, 0x73, 0x42, 0x0a, 0x0a, 0x08, + 0x5f, 0x72, 0x65, 0x76, 0x65, 0x72, 0x73, 0x65, 0x22, 0x29, 0x0a, 0x0f, 0x54, 0x72, 0x61, 0x6e, + 0x73, 0x66, 0x6f, 0x72, 0x6d, 0x4d, 0x61, 0x74, 0x72, 0x69, 0x78, 0x12, 0x16, 0x0a, 0x04, 0x64, + 0x61, 0x74, 0x61, 0x18, 0x01, 0x20, 0x03, 0x28, 0x02, 0x42, 0x02, 0x10, 0x01, 0x52, 0x04, 0x64, + 0x61, 0x74, 0x61, 0x22, 0xa0, 0x03, 0x0a, 0x11, 0x54, 0x72, 0x61, 0x6e, 0x73, 0x66, 0x6f, 0x72, + 0x6d, 0x52, 0x65, 0x73, 0x61, 0x6d, 0x70, 0x6c, 0x65, 0x12, 0x53, 0x0a, 0x0b, 0x62, 0x6f, 0x72, + 0x64, 0x65, 0x72, 0x5f, 0x6d, 0x6f, 0x64, 0x65, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0e, 0x32, 0x32, + 0x2e, 0x73, 0x74, 0x61, 0x62, 0x69, 0x6c, 0x69, 0x74, 0x79, 0x61, 0x69, 0x2e, 0x70, 0x6c, 0x61, + 0x74, 0x66, 0x6f, 0x72, 0x6d, 0x61, 0x70, 0x69, 0x73, 0x2e, 0x67, 0x65, 0x6e, 0x65, 0x72, 0x61, + 0x74, 0x69, 0x6f, 0x6e, 0x2e, 0x76, 0x31, 0x2e, 0x42, 0x6f, 0x72, 0x64, 0x65, 0x72, 0x4d, 0x6f, + 0x64, 0x65, 0x52, 0x0a, 0x62, 0x6f, 0x72, 0x64, 0x65, 0x72, 0x4d, 0x6f, 0x64, 0x65, 0x12, 0x55, + 0x0a, 0x09, 0x74, 0x72, 0x61, 0x6e, 0x73, 0x66, 0x6f, 0x72, 0x6d, 0x18, 0x02, 0x20, 0x01, 0x28, + 0x0b, 0x32, 0x37, 0x2e, 0x73, 0x74, 0x61, 0x62, 0x69, 0x6c, 0x69, 0x74, 0x79, 0x61, 0x69, 0x2e, + 0x70, 0x6c, 0x61, 0x74, 0x66, 0x6f, 0x72, 0x6d, 0x61, 0x70, 0x69, 0x73, 0x2e, 0x67, 0x65, 0x6e, + 0x65, 0x72, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x2e, 0x76, 0x31, 0x2e, 0x54, 0x72, 0x61, 0x6e, 0x73, + 0x66, 0x6f, 0x72, 0x6d, 0x4d, 0x61, 0x74, 0x72, 0x69, 0x78, 0x52, 0x09, 0x74, 0x72, 0x61, 0x6e, + 0x73, 0x66, 0x6f, 0x72, 0x6d, 0x12, 0x63, 0x0a, 0x0e, 0x70, 0x72, 0x65, 0x76, 0x5f, 0x74, 0x72, + 0x61, 0x6e, 0x73, 0x66, 0x6f, 0x72, 0x6d, 0x18, 0x03, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x37, 0x2e, + 0x73, 0x74, 0x61, 0x62, 0x69, 0x6c, 0x69, 0x74, 0x79, 0x61, 0x69, 0x2e, 0x70, 0x6c, 0x61, 0x74, + 0x66, 0x6f, 0x72, 0x6d, 0x61, 0x70, 0x69, 0x73, 0x2e, 0x67, 0x65, 0x6e, 0x65, 0x72, 0x61, 0x74, + 0x69, 0x6f, 0x6e, 0x2e, 0x76, 0x31, 0x2e, 0x54, 0x72, 0x61, 0x6e, 0x73, 0x66, 0x6f, 0x72, 0x6d, + 0x4d, 0x61, 0x74, 0x72, 0x69, 0x78, 0x48, 0x00, 0x52, 0x0d, 0x70, 0x72, 0x65, 0x76, 0x54, 0x72, + 0x61, 0x6e, 0x73, 0x66, 0x6f, 0x72, 0x6d, 0x88, 0x01, 0x01, 0x12, 0x22, 0x0a, 0x0a, 0x64, 0x65, + 0x70, 0x74, 0x68, 0x5f, 0x77, 0x61, 0x72, 0x70, 0x18, 0x04, 0x20, 0x01, 0x28, 0x02, 0x48, 0x01, + 0x52, 0x09, 0x64, 0x65, 0x70, 0x74, 0x68, 0x57, 0x61, 0x72, 0x70, 0x88, 0x01, 0x01, 0x12, 0x24, + 0x0a, 0x0b, 0x65, 0x78, 0x70, 0x6f, 0x72, 0x74, 0x5f, 0x6d, 0x61, 0x73, 0x6b, 0x18, 0x05, 0x20, + 0x01, 0x28, 0x08, 0x48, 0x02, 0x52, 0x0a, 0x65, 0x78, 0x70, 0x6f, 0x72, 0x74, 0x4d, 0x61, 0x73, + 0x6b, 0x88, 0x01, 0x01, 0x42, 0x11, 0x0a, 0x0f, 0x5f, 0x70, 0x72, 0x65, 0x76, 0x5f, 0x74, 0x72, + 0x61, 0x6e, 0x73, 0x66, 0x6f, 0x72, 0x6d, 0x42, 0x0d, 0x0a, 0x0b, 0x5f, 0x64, 0x65, 0x70, 0x74, + 0x68, 0x5f, 0x77, 0x61, 0x72, 0x70, 0x42, 0x0e, 0x0a, 0x0c, 0x5f, 0x65, 0x78, 0x70, 0x6f, 0x72, + 0x74, 0x5f, 0x6d, 0x61, 0x73, 0x6b, 0x22, 0xc2, 0x01, 0x0a, 0x10, 0x43, 0x61, 0x6d, 0x65, 0x72, + 0x61, 0x50, 0x61, 0x72, 0x61, 0x6d, 0x65, 0x74, 0x65, 0x72, 0x73, 0x12, 0x53, 0x0a, 0x0b, 0x63, + 0x61, 0x6d, 0x65, 0x72, 0x61, 0x5f, 0x74, 0x79, 0x70, 0x65, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0e, + 0x32, 0x32, 0x2e, 0x73, 0x74, 0x61, 0x62, 0x69, 0x6c, 0x69, 0x74, 0x79, 0x61, 0x69, 0x2e, 0x70, + 0x6c, 0x61, 0x74, 0x66, 0x6f, 0x72, 0x6d, 0x61, 0x70, 0x69, 0x73, 0x2e, 0x67, 0x65, 0x6e, 0x65, + 0x72, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x2e, 0x76, 0x31, 0x2e, 0x43, 0x61, 0x6d, 0x65, 0x72, 0x61, + 0x54, 0x79, 0x70, 0x65, 0x52, 0x0a, 0x63, 0x61, 0x6d, 0x65, 0x72, 0x61, 0x54, 0x79, 0x70, 0x65, + 0x12, 0x1d, 0x0a, 0x0a, 0x6e, 0x65, 0x61, 0x72, 0x5f, 0x70, 0x6c, 0x61, 0x6e, 0x65, 0x18, 0x02, + 0x20, 0x01, 0x28, 0x02, 0x52, 0x09, 0x6e, 0x65, 0x61, 0x72, 0x50, 0x6c, 0x61, 0x6e, 0x65, 0x12, + 0x1b, 0x0a, 0x09, 0x66, 0x61, 0x72, 0x5f, 0x70, 0x6c, 0x61, 0x6e, 0x65, 0x18, 0x03, 0x20, 0x01, + 0x28, 0x02, 0x52, 0x08, 0x66, 0x61, 0x72, 0x50, 0x6c, 0x61, 0x6e, 0x65, 0x12, 0x15, 0x0a, 0x03, + 0x66, 0x6f, 0x76, 0x18, 0x04, 0x20, 0x01, 0x28, 0x02, 0x48, 0x00, 0x52, 0x03, 0x66, 0x6f, 0x76, + 0x88, 0x01, 0x01, 0x42, 0x06, 0x0a, 0x04, 0x5f, 0x66, 0x6f, 0x76, 0x22, 0xf2, 0x02, 0x0a, 0x13, + 0x54, 0x72, 0x61, 0x6e, 0x73, 0x66, 0x6f, 0x72, 0x6d, 0x43, 0x61, 0x6d, 0x65, 0x72, 0x61, 0x50, + 0x6f, 0x73, 0x65, 0x12, 0x68, 0x0a, 0x14, 0x77, 0x6f, 0x72, 0x6c, 0x64, 0x5f, 0x74, 0x6f, 0x5f, + 0x76, 0x69, 0x65, 0x77, 0x5f, 0x6d, 0x61, 0x74, 0x72, 0x69, 0x78, 0x18, 0x01, 0x20, 0x01, 0x28, + 0x0b, 0x32, 0x37, 0x2e, 0x73, 0x74, 0x61, 0x62, 0x69, 0x6c, 0x69, 0x74, 0x79, 0x61, 0x69, 0x2e, + 0x70, 0x6c, 0x61, 0x74, 0x66, 0x6f, 0x72, 0x6d, 0x61, 0x70, 0x69, 0x73, 0x2e, 0x67, 0x65, 0x6e, + 0x65, 0x72, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x2e, 0x76, 0x31, 0x2e, 0x54, 0x72, 0x61, 0x6e, 0x73, + 0x66, 0x6f, 0x72, 0x6d, 0x4d, 0x61, 0x74, 0x72, 0x69, 0x78, 0x52, 0x11, 0x77, 0x6f, 0x72, 0x6c, + 0x64, 0x54, 0x6f, 0x56, 0x69, 0x65, 0x77, 0x4d, 0x61, 0x74, 0x72, 0x69, 0x78, 0x12, 0x65, 0x0a, + 0x11, 0x63, 0x61, 0x6d, 0x65, 0x72, 0x61, 0x5f, 0x70, 0x61, 0x72, 0x61, 0x6d, 0x65, 0x74, 0x65, + 0x72, 0x73, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x38, 0x2e, 0x73, 0x74, 0x61, 0x62, 0x69, + 0x6c, 0x69, 0x74, 0x79, 0x61, 0x69, 0x2e, 0x70, 0x6c, 0x61, 0x74, 0x66, 0x6f, 0x72, 0x6d, 0x61, + 0x70, 0x69, 0x73, 0x2e, 0x67, 0x65, 0x6e, 0x65, 0x72, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x2e, 0x76, + 0x31, 0x2e, 0x43, 0x61, 0x6d, 0x65, 0x72, 0x61, 0x50, 0x61, 0x72, 0x61, 0x6d, 0x65, 0x74, 0x65, + 0x72, 0x73, 0x52, 0x10, 0x63, 0x61, 0x6d, 0x65, 0x72, 0x61, 0x50, 0x61, 0x72, 0x61, 0x6d, 0x65, + 0x74, 0x65, 0x72, 0x73, 0x12, 0x1d, 0x0a, 0x0a, 0x64, 0x6f, 0x5f, 0x70, 0x72, 0x65, 0x66, 0x69, + 0x6c, 0x6c, 0x18, 0x05, 0x20, 0x01, 0x28, 0x08, 0x52, 0x09, 0x64, 0x6f, 0x50, 0x72, 0x65, 0x66, + 0x69, 0x6c, 0x6c, 0x12, 0x53, 0x0a, 0x0b, 0x72, 0x65, 0x6e, 0x64, 0x65, 0x72, 0x5f, 0x6d, 0x6f, + 0x64, 0x65, 0x18, 0x08, 0x20, 0x01, 0x28, 0x0e, 0x32, 0x32, 0x2e, 0x73, 0x74, 0x61, 0x62, 0x69, + 0x6c, 0x69, 0x74, 0x79, 0x61, 0x69, 0x2e, 0x70, 0x6c, 0x61, 0x74, 0x66, 0x6f, 0x72, 0x6d, 0x61, + 0x70, 0x69, 0x73, 0x2e, 0x67, 0x65, 0x6e, 0x65, 0x72, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x2e, 0x76, + 0x31, 0x2e, 0x52, 0x65, 0x6e, 0x64, 0x65, 0x72, 0x4d, 0x6f, 0x64, 0x65, 0x52, 0x0a, 0x72, 0x65, + 0x6e, 0x64, 0x65, 0x72, 0x4d, 0x6f, 0x64, 0x65, 0x4a, 0x04, 0x08, 0x03, 0x10, 0x04, 0x4a, 0x04, + 0x08, 0x04, 0x10, 0x05, 0x4a, 0x04, 0x08, 0x06, 0x10, 0x07, 0x4a, 0x04, 0x08, 0x07, 0x10, 0x08, + 0x22, 0x9b, 0x03, 0x0a, 0x13, 0x54, 0x72, 0x61, 0x6e, 0x73, 0x66, 0x6f, 0x72, 0x6d, 0x50, 0x61, + 0x72, 0x61, 0x6d, 0x65, 0x74, 0x65, 0x72, 0x73, 0x12, 0x61, 0x0a, 0x0c, 0x63, 0x6f, 0x6c, 0x6f, + 0x72, 0x5f, 0x61, 0x64, 0x6a, 0x75, 0x73, 0x74, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x3c, + 0x2e, 0x73, 0x74, 0x61, 0x62, 0x69, 0x6c, 0x69, 0x74, 0x79, 0x61, 0x69, 0x2e, 0x70, 0x6c, 0x61, + 0x74, 0x66, 0x6f, 0x72, 0x6d, 0x61, 0x70, 0x69, 0x73, 0x2e, 0x67, 0x65, 0x6e, 0x65, 0x72, 0x61, + 0x74, 0x69, 0x6f, 0x6e, 0x2e, 0x76, 0x31, 0x2e, 0x54, 0x72, 0x61, 0x6e, 0x73, 0x66, 0x6f, 0x72, + 0x6d, 0x43, 0x6f, 0x6c, 0x6f, 0x72, 0x41, 0x64, 0x6a, 0x75, 0x73, 0x74, 0x48, 0x00, 0x52, 0x0b, + 0x63, 0x6f, 0x6c, 0x6f, 0x72, 0x41, 0x64, 0x6a, 0x75, 0x73, 0x74, 0x12, 0x5b, 0x0a, 0x0a, 0x64, + 0x65, 0x70, 0x74, 0x68, 0x5f, 0x63, 0x61, 0x6c, 0x63, 0x18, 0x04, 0x20, 0x01, 0x28, 0x0b, 0x32, + 0x3a, 0x2e, 0x73, 0x74, 0x61, 0x62, 0x69, 0x6c, 0x69, 0x74, 0x79, 0x61, 0x69, 0x2e, 0x70, 0x6c, + 0x61, 0x74, 0x66, 0x6f, 0x72, 0x6d, 0x61, 0x70, 0x69, 0x73, 0x2e, 0x67, 0x65, 0x6e, 0x65, 0x72, + 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x2e, 0x76, 0x31, 0x2e, 0x54, 0x72, 0x61, 0x6e, 0x73, 0x66, 0x6f, + 0x72, 0x6d, 0x44, 0x65, 0x70, 0x74, 0x68, 0x43, 0x61, 0x6c, 0x63, 0x48, 0x00, 0x52, 0x09, 0x64, + 0x65, 0x70, 0x74, 0x68, 0x43, 0x61, 0x6c, 0x63, 0x12, 0x57, 0x0a, 0x08, 0x72, 0x65, 0x73, 0x61, + 0x6d, 0x70, 0x6c, 0x65, 0x18, 0x05, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x39, 0x2e, 0x73, 0x74, 0x61, + 0x62, 0x69, 0x6c, 0x69, 0x74, 0x79, 0x61, 0x69, 0x2e, 0x70, 0x6c, 0x61, 0x74, 0x66, 0x6f, 0x72, + 0x6d, 0x61, 0x70, 0x69, 0x73, 0x2e, 0x67, 0x65, 0x6e, 0x65, 0x72, 0x61, 0x74, 0x69, 0x6f, 0x6e, + 0x2e, 0x76, 0x31, 0x2e, 0x54, 0x72, 0x61, 0x6e, 0x73, 0x66, 0x6f, 0x72, 0x6d, 0x52, 0x65, 0x73, + 0x61, 0x6d, 0x70, 0x6c, 0x65, 0x48, 0x00, 0x52, 0x08, 0x72, 0x65, 0x73, 0x61, 0x6d, 0x70, 0x6c, + 0x65, 0x12, 0x5e, 0x0a, 0x0b, 0x63, 0x61, 0x6d, 0x65, 0x72, 0x61, 0x5f, 0x70, 0x6f, 0x73, 0x65, + 0x18, 0x06, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x3b, 0x2e, 0x73, 0x74, 0x61, 0x62, 0x69, 0x6c, 0x69, + 0x74, 0x79, 0x61, 0x69, 0x2e, 0x70, 0x6c, 0x61, 0x74, 0x66, 0x6f, 0x72, 0x6d, 0x61, 0x70, 0x69, + 0x73, 0x2e, 0x67, 0x65, 0x6e, 0x65, 0x72, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x2e, 0x76, 0x31, 0x2e, + 0x54, 0x72, 0x61, 0x6e, 0x73, 0x66, 0x6f, 0x72, 0x6d, 0x43, 0x61, 0x6d, 0x65, 0x72, 0x61, 0x50, + 0x6f, 0x73, 0x65, 0x48, 0x00, 0x52, 0x0a, 0x63, 0x61, 0x6d, 0x65, 0x72, 0x61, 0x50, 0x6f, 0x73, + 0x65, 0x42, 0x0b, 0x0a, 0x09, 0x74, 0x72, 0x61, 0x6e, 0x73, 0x66, 0x6f, 0x72, 0x6d, 0x22, 0xc1, + 0x01, 0x0a, 0x0f, 0x41, 0x73, 0x73, 0x65, 0x74, 0x50, 0x61, 0x72, 0x61, 0x6d, 0x65, 0x74, 0x65, + 0x72, 0x73, 0x12, 0x4b, 0x0a, 0x06, 0x61, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x18, 0x01, 0x20, 0x01, + 0x28, 0x0e, 0x32, 0x33, 0x2e, 0x73, 0x74, 0x61, 0x62, 0x69, 0x6c, 0x69, 0x74, 0x79, 0x61, 0x69, + 0x2e, 0x70, 0x6c, 0x61, 0x74, 0x66, 0x6f, 0x72, 0x6d, 0x61, 0x70, 0x69, 0x73, 0x2e, 0x67, 0x65, + 0x6e, 0x65, 0x72, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x2e, 0x76, 0x31, 0x2e, 0x41, 0x73, 0x73, 0x65, + 0x74, 0x41, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x52, 0x06, 0x61, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x12, + 0x1d, 0x0a, 0x0a, 0x70, 0x72, 0x6f, 0x6a, 0x65, 0x63, 0x74, 0x5f, 0x69, 0x64, 0x18, 0x02, 0x20, + 0x01, 0x28, 0x09, 0x52, 0x09, 0x70, 0x72, 0x6f, 0x6a, 0x65, 0x63, 0x74, 0x49, 0x64, 0x12, 0x42, + 0x0a, 0x03, 0x75, 0x73, 0x65, 0x18, 0x03, 0x20, 0x01, 0x28, 0x0e, 0x32, 0x30, 0x2e, 0x73, 0x74, + 0x61, 0x62, 0x69, 0x6c, 0x69, 0x74, 0x79, 0x61, 0x69, 0x2e, 0x70, 0x6c, 0x61, 0x74, 0x66, 0x6f, + 0x72, 0x6d, 0x61, 0x70, 0x69, 0x73, 0x2e, 0x67, 0x65, 0x6e, 0x65, 0x72, 0x61, 0x74, 0x69, 0x6f, + 0x6e, 0x2e, 0x76, 0x31, 0x2e, 0x41, 0x73, 0x73, 0x65, 0x74, 0x55, 0x73, 0x65, 0x52, 0x03, 0x75, + 0x73, 0x65, 0x22, 0xb4, 0x01, 0x0a, 0x0a, 0x41, 0x6e, 0x73, 0x77, 0x65, 0x72, 0x4d, 0x65, 0x74, + 0x61, 0x12, 0x1a, 0x0a, 0x06, 0x67, 0x70, 0x75, 0x5f, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, + 0x09, 0x48, 0x00, 0x52, 0x05, 0x67, 0x70, 0x75, 0x49, 0x64, 0x88, 0x01, 0x01, 0x12, 0x1a, 0x0a, + 0x06, 0x63, 0x70, 0x75, 0x5f, 0x69, 0x64, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x48, 0x01, 0x52, + 0x05, 0x63, 0x70, 0x75, 0x49, 0x64, 0x88, 0x01, 0x01, 0x12, 0x1c, 0x0a, 0x07, 0x6e, 0x6f, 0x64, + 0x65, 0x5f, 0x69, 0x64, 0x18, 0x03, 0x20, 0x01, 0x28, 0x09, 0x48, 0x02, 0x52, 0x06, 0x6e, 0x6f, + 0x64, 0x65, 0x49, 0x64, 0x88, 0x01, 0x01, 0x12, 0x20, 0x0a, 0x09, 0x65, 0x6e, 0x67, 0x69, 0x6e, + 0x65, 0x5f, 0x69, 0x64, 0x18, 0x04, 0x20, 0x01, 0x28, 0x09, 0x48, 0x03, 0x52, 0x08, 0x65, 0x6e, + 0x67, 0x69, 0x6e, 0x65, 0x49, 0x64, 0x88, 0x01, 0x01, 0x42, 0x09, 0x0a, 0x07, 0x5f, 0x67, 0x70, + 0x75, 0x5f, 0x69, 0x64, 0x42, 0x09, 0x0a, 0x07, 0x5f, 0x63, 0x70, 0x75, 0x5f, 0x69, 0x64, 0x42, + 0x0a, 0x0a, 0x08, 0x5f, 0x6e, 0x6f, 0x64, 0x65, 0x5f, 0x69, 0x64, 0x42, 0x0c, 0x0a, 0x0a, 0x5f, + 0x65, 0x6e, 0x67, 0x69, 0x6e, 0x65, 0x5f, 0x69, 0x64, 0x22, 0xa0, 0x02, 0x0a, 0x06, 0x41, 0x6e, + 0x73, 0x77, 0x65, 0x72, 0x12, 0x1b, 0x0a, 0x09, 0x61, 0x6e, 0x73, 0x77, 0x65, 0x72, 0x5f, 0x69, + 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x08, 0x61, 0x6e, 0x73, 0x77, 0x65, 0x72, 0x49, + 0x64, 0x12, 0x1d, 0x0a, 0x0a, 0x72, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x5f, 0x69, 0x64, 0x18, + 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x09, 0x72, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x49, 0x64, + 0x12, 0x1a, 0x0a, 0x08, 0x72, 0x65, 0x63, 0x65, 0x69, 0x76, 0x65, 0x64, 0x18, 0x03, 0x20, 0x01, + 0x28, 0x04, 0x52, 0x08, 0x72, 0x65, 0x63, 0x65, 0x69, 0x76, 0x65, 0x64, 0x12, 0x18, 0x0a, 0x07, + 0x63, 0x72, 0x65, 0x61, 0x74, 0x65, 0x64, 0x18, 0x04, 0x20, 0x01, 0x28, 0x04, 0x52, 0x07, 0x63, + 0x72, 0x65, 0x61, 0x74, 0x65, 0x64, 0x12, 0x4b, 0x0a, 0x04, 0x6d, 0x65, 0x74, 0x61, 0x18, 0x06, + 0x20, 0x01, 0x28, 0x0b, 0x32, 0x32, 0x2e, 0x73, 0x74, 0x61, 0x62, 0x69, 0x6c, 0x69, 0x74, 0x79, + 0x61, 0x69, 0x2e, 0x70, 0x6c, 0x61, 0x74, 0x66, 0x6f, 0x72, 0x6d, 0x61, 0x70, 0x69, 0x73, 0x2e, + 0x67, 0x65, 0x6e, 0x65, 0x72, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x2e, 0x76, 0x31, 0x2e, 0x41, 0x6e, + 0x73, 0x77, 0x65, 0x72, 0x4d, 0x65, 0x74, 0x61, 0x48, 0x00, 0x52, 0x04, 0x6d, 0x65, 0x74, 0x61, + 0x88, 0x01, 0x01, 0x12, 0x4e, 0x0a, 0x09, 0x61, 0x72, 0x74, 0x69, 0x66, 0x61, 0x63, 0x74, 0x73, + 0x18, 0x07, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x30, 0x2e, 0x73, 0x74, 0x61, 0x62, 0x69, 0x6c, 0x69, + 0x74, 0x79, 0x61, 0x69, 0x2e, 0x70, 0x6c, 0x61, 0x74, 0x66, 0x6f, 0x72, 0x6d, 0x61, 0x70, 0x69, + 0x73, 0x2e, 0x67, 0x65, 0x6e, 0x65, 0x72, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x2e, 0x76, 0x31, 0x2e, + 0x41, 0x72, 0x74, 0x69, 0x66, 0x61, 0x63, 0x74, 0x52, 0x09, 0x61, 0x72, 0x74, 0x69, 0x66, 0x61, + 0x63, 0x74, 0x73, 0x42, 0x07, 0x0a, 0x05, 0x5f, 0x6d, 0x65, 0x74, 0x61, 0x22, 0x72, 0x0a, 0x0b, + 0x41, 0x6e, 0x73, 0x77, 0x65, 0x72, 0x42, 0x61, 0x74, 0x63, 0x68, 0x12, 0x19, 0x0a, 0x08, 0x62, + 0x61, 0x74, 0x63, 0x68, 0x5f, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x07, 0x62, + 0x61, 0x74, 0x63, 0x68, 0x49, 0x64, 0x12, 0x48, 0x0a, 0x07, 0x61, 0x6e, 0x73, 0x77, 0x65, 0x72, + 0x73, 0x18, 0x02, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x2e, 0x2e, 0x73, 0x74, 0x61, 0x62, 0x69, 0x6c, + 0x69, 0x74, 0x79, 0x61, 0x69, 0x2e, 0x70, 0x6c, 0x61, 0x74, 0x66, 0x6f, 0x72, 0x6d, 0x61, 0x70, + 0x69, 0x73, 0x2e, 0x67, 0x65, 0x6e, 0x65, 0x72, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x2e, 0x76, 0x31, + 0x2e, 0x41, 0x6e, 0x73, 0x77, 0x65, 0x72, 0x52, 0x07, 0x61, 0x6e, 0x73, 0x77, 0x65, 0x72, 0x73, + 0x22, 0xfa, 0x06, 0x0a, 0x07, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, 0x1b, 0x0a, 0x09, + 0x65, 0x6e, 0x67, 0x69, 0x6e, 0x65, 0x5f, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, + 0x08, 0x65, 0x6e, 0x67, 0x69, 0x6e, 0x65, 0x49, 0x64, 0x12, 0x1d, 0x0a, 0x0a, 0x72, 0x65, 0x71, + 0x75, 0x65, 0x73, 0x74, 0x5f, 0x69, 0x64, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x09, 0x72, + 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x49, 0x64, 0x12, 0x5b, 0x0a, 0x0e, 0x72, 0x65, 0x71, 0x75, + 0x65, 0x73, 0x74, 0x65, 0x64, 0x5f, 0x74, 0x79, 0x70, 0x65, 0x18, 0x03, 0x20, 0x01, 0x28, 0x0e, + 0x32, 0x34, 0x2e, 0x73, 0x74, 0x61, 0x62, 0x69, 0x6c, 0x69, 0x74, 0x79, 0x61, 0x69, 0x2e, 0x70, + 0x6c, 0x61, 0x74, 0x66, 0x6f, 0x72, 0x6d, 0x61, 0x70, 0x69, 0x73, 0x2e, 0x67, 0x65, 0x6e, 0x65, + 0x72, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x2e, 0x76, 0x31, 0x2e, 0x41, 0x72, 0x74, 0x69, 0x66, 0x61, + 0x63, 0x74, 0x54, 0x79, 0x70, 0x65, 0x52, 0x0d, 0x72, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x65, + 0x64, 0x54, 0x79, 0x70, 0x65, 0x12, 0x46, 0x0a, 0x06, 0x70, 0x72, 0x6f, 0x6d, 0x70, 0x74, 0x18, + 0x04, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x2e, 0x2e, 0x73, 0x74, 0x61, 0x62, 0x69, 0x6c, 0x69, 0x74, + 0x79, 0x61, 0x69, 0x2e, 0x70, 0x6c, 0x61, 0x74, 0x66, 0x6f, 0x72, 0x6d, 0x61, 0x70, 0x69, 0x73, + 0x2e, 0x67, 0x65, 0x6e, 0x65, 0x72, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x2e, 0x76, 0x31, 0x2e, 0x50, + 0x72, 0x6f, 0x6d, 0x70, 0x74, 0x52, 0x06, 0x70, 0x72, 0x6f, 0x6d, 0x70, 0x74, 0x12, 0x4f, 0x0a, + 0x05, 0x69, 0x6d, 0x61, 0x67, 0x65, 0x18, 0x05, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x37, 0x2e, 0x73, + 0x74, 0x61, 0x62, 0x69, 0x6c, 0x69, 0x74, 0x79, 0x61, 0x69, 0x2e, 0x70, 0x6c, 0x61, 0x74, 0x66, + 0x6f, 0x72, 0x6d, 0x61, 0x70, 0x69, 0x73, 0x2e, 0x67, 0x65, 0x6e, 0x65, 0x72, 0x61, 0x74, 0x69, + 0x6f, 0x6e, 0x2e, 0x76, 0x31, 0x2e, 0x49, 0x6d, 0x61, 0x67, 0x65, 0x50, 0x61, 0x72, 0x61, 0x6d, + 0x65, 0x74, 0x65, 0x72, 0x73, 0x48, 0x00, 0x52, 0x05, 0x69, 0x6d, 0x61, 0x67, 0x65, 0x12, 0x5e, + 0x0a, 0x0a, 0x63, 0x6c, 0x61, 0x73, 0x73, 0x69, 0x66, 0x69, 0x65, 0x72, 0x18, 0x07, 0x20, 0x01, + 0x28, 0x0b, 0x32, 0x3c, 0x2e, 0x73, 0x74, 0x61, 0x62, 0x69, 0x6c, 0x69, 0x74, 0x79, 0x61, 0x69, + 0x2e, 0x70, 0x6c, 0x61, 0x74, 0x66, 0x6f, 0x72, 0x6d, 0x61, 0x70, 0x69, 0x73, 0x2e, 0x67, 0x65, + 0x6e, 0x65, 0x72, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x2e, 0x76, 0x31, 0x2e, 0x43, 0x6c, 0x61, 0x73, + 0x73, 0x69, 0x66, 0x69, 0x65, 0x72, 0x50, 0x61, 0x72, 0x61, 0x6d, 0x65, 0x74, 0x65, 0x72, 0x73, + 0x48, 0x00, 0x52, 0x0a, 0x63, 0x6c, 0x61, 0x73, 0x73, 0x69, 0x66, 0x69, 0x65, 0x72, 0x12, 0x4f, + 0x0a, 0x05, 0x61, 0x73, 0x73, 0x65, 0x74, 0x18, 0x08, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x37, 0x2e, + 0x73, 0x74, 0x61, 0x62, 0x69, 0x6c, 0x69, 0x74, 0x79, 0x61, 0x69, 0x2e, 0x70, 0x6c, 0x61, 0x74, + 0x66, 0x6f, 0x72, 0x6d, 0x61, 0x70, 0x69, 0x73, 0x2e, 0x67, 0x65, 0x6e, 0x65, 0x72, 0x61, 0x74, + 0x69, 0x6f, 0x6e, 0x2e, 0x76, 0x31, 0x2e, 0x41, 0x73, 0x73, 0x65, 0x74, 0x50, 0x61, 0x72, 0x61, + 0x6d, 0x65, 0x74, 0x65, 0x72, 0x73, 0x48, 0x00, 0x52, 0x05, 0x61, 0x73, 0x73, 0x65, 0x74, 0x12, + 0x61, 0x0a, 0x0b, 0x69, 0x6e, 0x74, 0x65, 0x72, 0x70, 0x6f, 0x6c, 0x61, 0x74, 0x65, 0x18, 0x0b, + 0x20, 0x01, 0x28, 0x0b, 0x32, 0x3d, 0x2e, 0x73, 0x74, 0x61, 0x62, 0x69, 0x6c, 0x69, 0x74, 0x79, + 0x61, 0x69, 0x2e, 0x70, 0x6c, 0x61, 0x74, 0x66, 0x6f, 0x72, 0x6d, 0x61, 0x70, 0x69, 0x73, 0x2e, + 0x67, 0x65, 0x6e, 0x65, 0x72, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x2e, 0x76, 0x31, 0x2e, 0x49, 0x6e, + 0x74, 0x65, 0x72, 0x70, 0x6f, 0x6c, 0x61, 0x74, 0x65, 0x50, 0x61, 0x72, 0x61, 0x6d, 0x65, 0x74, + 0x65, 0x72, 0x73, 0x48, 0x00, 0x52, 0x0b, 0x69, 0x6e, 0x74, 0x65, 0x72, 0x70, 0x6f, 0x6c, 0x61, + 0x74, 0x65, 0x12, 0x5b, 0x0a, 0x09, 0x74, 0x72, 0x61, 0x6e, 0x73, 0x66, 0x6f, 0x72, 0x6d, 0x18, + 0x0c, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x3b, 0x2e, 0x73, 0x74, 0x61, 0x62, 0x69, 0x6c, 0x69, 0x74, + 0x79, 0x61, 0x69, 0x2e, 0x70, 0x6c, 0x61, 0x74, 0x66, 0x6f, 0x72, 0x6d, 0x61, 0x70, 0x69, 0x73, + 0x2e, 0x67, 0x65, 0x6e, 0x65, 0x72, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x2e, 0x76, 0x31, 0x2e, 0x54, + 0x72, 0x61, 0x6e, 0x73, 0x66, 0x6f, 0x72, 0x6d, 0x50, 0x61, 0x72, 0x61, 0x6d, 0x65, 0x74, 0x65, + 0x72, 0x73, 0x48, 0x00, 0x52, 0x09, 0x74, 0x72, 0x61, 0x6e, 0x73, 0x66, 0x6f, 0x72, 0x6d, 0x12, + 0x64, 0x0a, 0x0b, 0x63, 0x6f, 0x6e, 0x64, 0x69, 0x74, 0x69, 0x6f, 0x6e, 0x65, 0x72, 0x18, 0x06, + 0x20, 0x01, 0x28, 0x0b, 0x32, 0x3d, 0x2e, 0x73, 0x74, 0x61, 0x62, 0x69, 0x6c, 0x69, 0x74, 0x79, + 0x61, 0x69, 0x2e, 0x70, 0x6c, 0x61, 0x74, 0x66, 0x6f, 0x72, 0x6d, 0x61, 0x70, 0x69, 0x73, 0x2e, + 0x67, 0x65, 0x6e, 0x65, 0x72, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x2e, 0x76, 0x31, 0x2e, 0x43, 0x6f, + 0x6e, 0x64, 0x69, 0x74, 0x69, 0x6f, 0x6e, 0x65, 0x72, 0x50, 0x61, 0x72, 0x61, 0x6d, 0x65, 0x74, + 0x65, 0x72, 0x73, 0x48, 0x01, 0x52, 0x0b, 0x63, 0x6f, 0x6e, 0x64, 0x69, 0x74, 0x69, 0x6f, 0x6e, + 0x65, 0x72, 0x88, 0x01, 0x01, 0x12, 0x35, 0x0a, 0x06, 0x65, 0x78, 0x74, 0x72, 0x61, 0x73, 0x18, + 0xff, 0x0f, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x17, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, + 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x62, 0x75, 0x66, 0x2e, 0x53, 0x74, 0x72, 0x75, 0x63, 0x74, 0x48, + 0x02, 0x52, 0x06, 0x65, 0x78, 0x74, 0x72, 0x61, 0x73, 0x88, 0x01, 0x01, 0x42, 0x08, 0x0a, 0x06, + 0x70, 0x61, 0x72, 0x61, 0x6d, 0x73, 0x42, 0x0e, 0x0a, 0x0c, 0x5f, 0x63, 0x6f, 0x6e, 0x64, 0x69, + 0x74, 0x69, 0x6f, 0x6e, 0x65, 0x72, 0x42, 0x09, 0x0a, 0x07, 0x5f, 0x65, 0x78, 0x74, 0x72, 0x61, + 0x73, 0x4a, 0x04, 0x08, 0x09, 0x10, 0x0a, 0x4a, 0x04, 0x08, 0x0a, 0x10, 0x0b, 0x22, 0xcd, 0x01, + 0x0a, 0x08, 0x4f, 0x6e, 0x53, 0x74, 0x61, 0x74, 0x75, 0x73, 0x12, 0x4c, 0x0a, 0x06, 0x72, 0x65, + 0x61, 0x73, 0x6f, 0x6e, 0x18, 0x01, 0x20, 0x03, 0x28, 0x0e, 0x32, 0x34, 0x2e, 0x73, 0x74, 0x61, + 0x62, 0x69, 0x6c, 0x69, 0x74, 0x79, 0x61, 0x69, 0x2e, 0x70, 0x6c, 0x61, 0x74, 0x66, 0x6f, 0x72, + 0x6d, 0x61, 0x70, 0x69, 0x73, 0x2e, 0x67, 0x65, 0x6e, 0x65, 0x72, 0x61, 0x74, 0x69, 0x6f, 0x6e, + 0x2e, 0x76, 0x31, 0x2e, 0x46, 0x69, 0x6e, 0x69, 0x73, 0x68, 0x52, 0x65, 0x61, 0x73, 0x6f, 0x6e, + 0x52, 0x06, 0x72, 0x65, 0x61, 0x73, 0x6f, 0x6e, 0x12, 0x1b, 0x0a, 0x06, 0x74, 0x61, 0x72, 0x67, + 0x65, 0x74, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x48, 0x00, 0x52, 0x06, 0x74, 0x61, 0x72, 0x67, + 0x65, 0x74, 0x88, 0x01, 0x01, 0x12, 0x4b, 0x0a, 0x06, 0x61, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x18, + 0x03, 0x20, 0x03, 0x28, 0x0e, 0x32, 0x33, 0x2e, 0x73, 0x74, 0x61, 0x62, 0x69, 0x6c, 0x69, 0x74, + 0x79, 0x61, 0x69, 0x2e, 0x70, 0x6c, 0x61, 0x74, 0x66, 0x6f, 0x72, 0x6d, 0x61, 0x70, 0x69, 0x73, + 0x2e, 0x67, 0x65, 0x6e, 0x65, 0x72, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x2e, 0x76, 0x31, 0x2e, 0x53, + 0x74, 0x61, 0x67, 0x65, 0x41, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x52, 0x06, 0x61, 0x63, 0x74, 0x69, + 0x6f, 0x6e, 0x42, 0x09, 0x0a, 0x07, 0x5f, 0x74, 0x61, 0x72, 0x67, 0x65, 0x74, 0x22, 0xb1, 0x01, + 0x0a, 0x05, 0x53, 0x74, 0x61, 0x67, 0x65, 0x12, 0x0e, 0x0a, 0x02, 0x69, 0x64, 0x18, 0x01, 0x20, + 0x01, 0x28, 0x09, 0x52, 0x02, 0x69, 0x64, 0x12, 0x49, 0x0a, 0x07, 0x72, 0x65, 0x71, 0x75, 0x65, + 0x73, 0x74, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x2f, 0x2e, 0x73, 0x74, 0x61, 0x62, 0x69, + 0x6c, 0x69, 0x74, 0x79, 0x61, 0x69, 0x2e, 0x70, 0x6c, 0x61, 0x74, 0x66, 0x6f, 0x72, 0x6d, 0x61, + 0x70, 0x69, 0x73, 0x2e, 0x67, 0x65, 0x6e, 0x65, 0x72, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x2e, 0x76, + 0x31, 0x2e, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x52, 0x07, 0x72, 0x65, 0x71, 0x75, 0x65, + 0x73, 0x74, 0x12, 0x4d, 0x0a, 0x09, 0x6f, 0x6e, 0x5f, 0x73, 0x74, 0x61, 0x74, 0x75, 0x73, 0x18, + 0x03, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x30, 0x2e, 0x73, 0x74, 0x61, 0x62, 0x69, 0x6c, 0x69, 0x74, + 0x79, 0x61, 0x69, 0x2e, 0x70, 0x6c, 0x61, 0x74, 0x66, 0x6f, 0x72, 0x6d, 0x61, 0x70, 0x69, 0x73, + 0x2e, 0x67, 0x65, 0x6e, 0x65, 0x72, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x2e, 0x76, 0x31, 0x2e, 0x4f, + 0x6e, 0x53, 0x74, 0x61, 0x74, 0x75, 0x73, 0x52, 0x08, 0x6f, 0x6e, 0x53, 0x74, 0x61, 0x74, 0x75, + 0x73, 0x22, 0x72, 0x0a, 0x0c, 0x43, 0x68, 0x61, 0x69, 0x6e, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, + 0x74, 0x12, 0x1d, 0x0a, 0x0a, 0x72, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x5f, 0x69, 0x64, 0x18, + 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x09, 0x72, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x49, 0x64, + 0x12, 0x43, 0x0a, 0x05, 0x73, 0x74, 0x61, 0x67, 0x65, 0x18, 0x02, 0x20, 0x03, 0x28, 0x0b, 0x32, + 0x2d, 0x2e, 0x73, 0x74, 0x61, 0x62, 0x69, 0x6c, 0x69, 0x74, 0x79, 0x61, 0x69, 0x2e, 0x70, 0x6c, + 0x61, 0x74, 0x66, 0x6f, 0x72, 0x6d, 0x61, 0x70, 0x69, 0x73, 0x2e, 0x67, 0x65, 0x6e, 0x65, 0x72, + 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x2e, 0x76, 0x31, 0x2e, 0x53, 0x74, 0x61, 0x67, 0x65, 0x52, 0x05, + 0x73, 0x74, 0x61, 0x67, 0x65, 0x2a, 0x45, 0x0a, 0x0c, 0x46, 0x69, 0x6e, 0x69, 0x73, 0x68, 0x52, + 0x65, 0x61, 0x73, 0x6f, 0x6e, 0x12, 0x08, 0x0a, 0x04, 0x4e, 0x55, 0x4c, 0x4c, 0x10, 0x00, 0x12, + 0x0a, 0x0a, 0x06, 0x4c, 0x45, 0x4e, 0x47, 0x54, 0x48, 0x10, 0x01, 0x12, 0x08, 0x0a, 0x04, 0x53, + 0x54, 0x4f, 0x50, 0x10, 0x02, 0x12, 0x09, 0x0a, 0x05, 0x45, 0x52, 0x52, 0x4f, 0x52, 0x10, 0x03, + 0x12, 0x0a, 0x0a, 0x06, 0x46, 0x49, 0x4c, 0x54, 0x45, 0x52, 0x10, 0x04, 0x2a, 0xf8, 0x01, 0x0a, + 0x0c, 0x41, 0x72, 0x74, 0x69, 0x66, 0x61, 0x63, 0x74, 0x54, 0x79, 0x70, 0x65, 0x12, 0x11, 0x0a, + 0x0d, 0x41, 0x52, 0x54, 0x49, 0x46, 0x41, 0x43, 0x54, 0x5f, 0x4e, 0x4f, 0x4e, 0x45, 0x10, 0x00, + 0x12, 0x12, 0x0a, 0x0e, 0x41, 0x52, 0x54, 0x49, 0x46, 0x41, 0x43, 0x54, 0x5f, 0x49, 0x4d, 0x41, + 0x47, 0x45, 0x10, 0x01, 0x12, 0x12, 0x0a, 0x0e, 0x41, 0x52, 0x54, 0x49, 0x46, 0x41, 0x43, 0x54, + 0x5f, 0x56, 0x49, 0x44, 0x45, 0x4f, 0x10, 0x02, 0x12, 0x11, 0x0a, 0x0d, 0x41, 0x52, 0x54, 0x49, + 0x46, 0x41, 0x43, 0x54, 0x5f, 0x54, 0x45, 0x58, 0x54, 0x10, 0x03, 0x12, 0x13, 0x0a, 0x0f, 0x41, + 0x52, 0x54, 0x49, 0x46, 0x41, 0x43, 0x54, 0x5f, 0x54, 0x4f, 0x4b, 0x45, 0x4e, 0x53, 0x10, 0x04, + 0x12, 0x16, 0x0a, 0x12, 0x41, 0x52, 0x54, 0x49, 0x46, 0x41, 0x43, 0x54, 0x5f, 0x45, 0x4d, 0x42, + 0x45, 0x44, 0x44, 0x49, 0x4e, 0x47, 0x10, 0x05, 0x12, 0x1c, 0x0a, 0x18, 0x41, 0x52, 0x54, 0x49, + 0x46, 0x41, 0x43, 0x54, 0x5f, 0x43, 0x4c, 0x41, 0x53, 0x53, 0x49, 0x46, 0x49, 0x43, 0x41, 0x54, + 0x49, 0x4f, 0x4e, 0x53, 0x10, 0x06, 0x12, 0x11, 0x0a, 0x0d, 0x41, 0x52, 0x54, 0x49, 0x46, 0x41, + 0x43, 0x54, 0x5f, 0x4d, 0x41, 0x53, 0x4b, 0x10, 0x07, 0x12, 0x13, 0x0a, 0x0f, 0x41, 0x52, 0x54, + 0x49, 0x46, 0x41, 0x43, 0x54, 0x5f, 0x4c, 0x41, 0x54, 0x45, 0x4e, 0x54, 0x10, 0x08, 0x12, 0x13, + 0x0a, 0x0f, 0x41, 0x52, 0x54, 0x49, 0x46, 0x41, 0x43, 0x54, 0x5f, 0x54, 0x45, 0x4e, 0x53, 0x4f, + 0x52, 0x10, 0x09, 0x12, 0x12, 0x0a, 0x0e, 0x41, 0x52, 0x54, 0x49, 0x46, 0x41, 0x43, 0x54, 0x5f, + 0x44, 0x45, 0x50, 0x54, 0x48, 0x10, 0x0a, 0x2a, 0x67, 0x0a, 0x0e, 0x4d, 0x61, 0x73, 0x6b, 0x65, + 0x64, 0x41, 0x72, 0x65, 0x61, 0x49, 0x6e, 0x69, 0x74, 0x12, 0x19, 0x0a, 0x15, 0x4d, 0x41, 0x53, + 0x4b, 0x45, 0x44, 0x5f, 0x41, 0x52, 0x45, 0x41, 0x5f, 0x49, 0x4e, 0x49, 0x54, 0x5f, 0x5a, 0x45, + 0x52, 0x4f, 0x10, 0x00, 0x12, 0x1b, 0x0a, 0x17, 0x4d, 0x41, 0x53, 0x4b, 0x45, 0x44, 0x5f, 0x41, + 0x52, 0x45, 0x41, 0x5f, 0x49, 0x4e, 0x49, 0x54, 0x5f, 0x52, 0x41, 0x4e, 0x44, 0x4f, 0x4d, 0x10, + 0x01, 0x12, 0x1d, 0x0a, 0x19, 0x4d, 0x41, 0x53, 0x4b, 0x45, 0x44, 0x5f, 0x41, 0x52, 0x45, 0x41, + 0x5f, 0x49, 0x4e, 0x49, 0x54, 0x5f, 0x4f, 0x52, 0x49, 0x47, 0x49, 0x4e, 0x41, 0x4c, 0x10, 0x02, + 0x2a, 0x35, 0x0a, 0x0c, 0x57, 0x65, 0x69, 0x67, 0x68, 0x74, 0x4d, 0x65, 0x74, 0x68, 0x6f, 0x64, + 0x12, 0x10, 0x0a, 0x0c, 0x54, 0x45, 0x58, 0x54, 0x5f, 0x45, 0x4e, 0x43, 0x4f, 0x44, 0x45, 0x52, + 0x10, 0x00, 0x12, 0x13, 0x0a, 0x0f, 0x43, 0x52, 0x4f, 0x53, 0x53, 0x5f, 0x41, 0x54, 0x54, 0x45, + 0x4e, 0x54, 0x49, 0x4f, 0x4e, 0x10, 0x01, 0x2a, 0x98, 0x02, 0x0a, 0x10, 0x44, 0x69, 0x66, 0x66, + 0x75, 0x73, 0x69, 0x6f, 0x6e, 0x53, 0x61, 0x6d, 0x70, 0x6c, 0x65, 0x72, 0x12, 0x10, 0x0a, 0x0c, + 0x53, 0x41, 0x4d, 0x50, 0x4c, 0x45, 0x52, 0x5f, 0x44, 0x44, 0x49, 0x4d, 0x10, 0x00, 0x12, 0x10, + 0x0a, 0x0c, 0x53, 0x41, 0x4d, 0x50, 0x4c, 0x45, 0x52, 0x5f, 0x44, 0x44, 0x50, 0x4d, 0x10, 0x01, + 0x12, 0x13, 0x0a, 0x0f, 0x53, 0x41, 0x4d, 0x50, 0x4c, 0x45, 0x52, 0x5f, 0x4b, 0x5f, 0x45, 0x55, + 0x4c, 0x45, 0x52, 0x10, 0x02, 0x12, 0x1d, 0x0a, 0x19, 0x53, 0x41, 0x4d, 0x50, 0x4c, 0x45, 0x52, + 0x5f, 0x4b, 0x5f, 0x45, 0x55, 0x4c, 0x45, 0x52, 0x5f, 0x41, 0x4e, 0x43, 0x45, 0x53, 0x54, 0x52, + 0x41, 0x4c, 0x10, 0x03, 0x12, 0x12, 0x0a, 0x0e, 0x53, 0x41, 0x4d, 0x50, 0x4c, 0x45, 0x52, 0x5f, + 0x4b, 0x5f, 0x48, 0x45, 0x55, 0x4e, 0x10, 0x04, 0x12, 0x13, 0x0a, 0x0f, 0x53, 0x41, 0x4d, 0x50, + 0x4c, 0x45, 0x52, 0x5f, 0x4b, 0x5f, 0x44, 0x50, 0x4d, 0x5f, 0x32, 0x10, 0x05, 0x12, 0x1d, 0x0a, + 0x19, 0x53, 0x41, 0x4d, 0x50, 0x4c, 0x45, 0x52, 0x5f, 0x4b, 0x5f, 0x44, 0x50, 0x4d, 0x5f, 0x32, + 0x5f, 0x41, 0x4e, 0x43, 0x45, 0x53, 0x54, 0x52, 0x41, 0x4c, 0x10, 0x06, 0x12, 0x11, 0x0a, 0x0d, + 0x53, 0x41, 0x4d, 0x50, 0x4c, 0x45, 0x52, 0x5f, 0x4b, 0x5f, 0x4c, 0x4d, 0x53, 0x10, 0x07, 0x12, + 0x20, 0x0a, 0x1c, 0x53, 0x41, 0x4d, 0x50, 0x4c, 0x45, 0x52, 0x5f, 0x4b, 0x5f, 0x44, 0x50, 0x4d, + 0x50, 0x50, 0x5f, 0x32, 0x53, 0x5f, 0x41, 0x4e, 0x43, 0x45, 0x53, 0x54, 0x52, 0x41, 0x4c, 0x10, + 0x08, 0x12, 0x16, 0x0a, 0x12, 0x53, 0x41, 0x4d, 0x50, 0x4c, 0x45, 0x52, 0x5f, 0x4b, 0x5f, 0x44, + 0x50, 0x4d, 0x50, 0x50, 0x5f, 0x32, 0x4d, 0x10, 0x09, 0x12, 0x17, 0x0a, 0x13, 0x53, 0x41, 0x4d, + 0x50, 0x4c, 0x45, 0x52, 0x5f, 0x4b, 0x5f, 0x44, 0x50, 0x4d, 0x50, 0x50, 0x5f, 0x53, 0x44, 0x45, + 0x10, 0x0a, 0x2a, 0x46, 0x0a, 0x08, 0x55, 0x70, 0x73, 0x63, 0x61, 0x6c, 0x65, 0x72, 0x12, 0x10, + 0x0a, 0x0c, 0x55, 0x50, 0x53, 0x43, 0x41, 0x4c, 0x45, 0x52, 0x5f, 0x52, 0x47, 0x42, 0x10, 0x00, + 0x12, 0x13, 0x0a, 0x0f, 0x55, 0x50, 0x53, 0x43, 0x41, 0x4c, 0x45, 0x52, 0x5f, 0x47, 0x46, 0x50, + 0x47, 0x41, 0x4e, 0x10, 0x01, 0x12, 0x13, 0x0a, 0x0f, 0x55, 0x50, 0x53, 0x43, 0x41, 0x4c, 0x45, + 0x52, 0x5f, 0x45, 0x53, 0x52, 0x47, 0x41, 0x4e, 0x10, 0x02, 0x2a, 0xd8, 0x01, 0x0a, 0x0e, 0x47, + 0x75, 0x69, 0x64, 0x61, 0x6e, 0x63, 0x65, 0x50, 0x72, 0x65, 0x73, 0x65, 0x74, 0x12, 0x18, 0x0a, + 0x14, 0x47, 0x55, 0x49, 0x44, 0x41, 0x4e, 0x43, 0x45, 0x5f, 0x50, 0x52, 0x45, 0x53, 0x45, 0x54, + 0x5f, 0x4e, 0x4f, 0x4e, 0x45, 0x10, 0x00, 0x12, 0x1a, 0x0a, 0x16, 0x47, 0x55, 0x49, 0x44, 0x41, + 0x4e, 0x43, 0x45, 0x5f, 0x50, 0x52, 0x45, 0x53, 0x45, 0x54, 0x5f, 0x53, 0x49, 0x4d, 0x50, 0x4c, + 0x45, 0x10, 0x01, 0x12, 0x1d, 0x0a, 0x19, 0x47, 0x55, 0x49, 0x44, 0x41, 0x4e, 0x43, 0x45, 0x5f, + 0x50, 0x52, 0x45, 0x53, 0x45, 0x54, 0x5f, 0x46, 0x41, 0x53, 0x54, 0x5f, 0x42, 0x4c, 0x55, 0x45, + 0x10, 0x02, 0x12, 0x1e, 0x0a, 0x1a, 0x47, 0x55, 0x49, 0x44, 0x41, 0x4e, 0x43, 0x45, 0x5f, 0x50, + 0x52, 0x45, 0x53, 0x45, 0x54, 0x5f, 0x46, 0x41, 0x53, 0x54, 0x5f, 0x47, 0x52, 0x45, 0x45, 0x4e, + 0x10, 0x03, 0x12, 0x18, 0x0a, 0x14, 0x47, 0x55, 0x49, 0x44, 0x41, 0x4e, 0x43, 0x45, 0x5f, 0x50, + 0x52, 0x45, 0x53, 0x45, 0x54, 0x5f, 0x53, 0x4c, 0x4f, 0x57, 0x10, 0x04, 0x12, 0x1a, 0x0a, 0x16, + 0x47, 0x55, 0x49, 0x44, 0x41, 0x4e, 0x43, 0x45, 0x5f, 0x50, 0x52, 0x45, 0x53, 0x45, 0x54, 0x5f, + 0x53, 0x4c, 0x4f, 0x57, 0x45, 0x52, 0x10, 0x05, 0x12, 0x1b, 0x0a, 0x17, 0x47, 0x55, 0x49, 0x44, + 0x41, 0x4e, 0x43, 0x45, 0x5f, 0x50, 0x52, 0x45, 0x53, 0x45, 0x54, 0x5f, 0x53, 0x4c, 0x4f, 0x57, + 0x45, 0x53, 0x54, 0x10, 0x06, 0x2a, 0x91, 0x01, 0x0a, 0x11, 0x4d, 0x6f, 0x64, 0x65, 0x6c, 0x41, + 0x72, 0x63, 0x68, 0x69, 0x74, 0x65, 0x63, 0x74, 0x75, 0x72, 0x65, 0x12, 0x1b, 0x0a, 0x17, 0x4d, + 0x4f, 0x44, 0x45, 0x4c, 0x5f, 0x41, 0x52, 0x43, 0x48, 0x49, 0x54, 0x45, 0x43, 0x54, 0x55, 0x52, + 0x45, 0x5f, 0x4e, 0x4f, 0x4e, 0x45, 0x10, 0x00, 0x12, 0x1f, 0x0a, 0x1b, 0x4d, 0x4f, 0x44, 0x45, + 0x4c, 0x5f, 0x41, 0x52, 0x43, 0x48, 0x49, 0x54, 0x45, 0x43, 0x54, 0x55, 0x52, 0x45, 0x5f, 0x43, + 0x4c, 0x49, 0x50, 0x5f, 0x56, 0x49, 0x54, 0x10, 0x01, 0x12, 0x22, 0x0a, 0x1e, 0x4d, 0x4f, 0x44, + 0x45, 0x4c, 0x5f, 0x41, 0x52, 0x43, 0x48, 0x49, 0x54, 0x45, 0x43, 0x54, 0x55, 0x52, 0x45, 0x5f, + 0x43, 0x4c, 0x49, 0x50, 0x5f, 0x52, 0x45, 0x53, 0x4e, 0x45, 0x54, 0x10, 0x02, 0x12, 0x1a, 0x0a, + 0x16, 0x4d, 0x4f, 0x44, 0x45, 0x4c, 0x5f, 0x41, 0x52, 0x43, 0x48, 0x49, 0x54, 0x45, 0x43, 0x54, + 0x55, 0x52, 0x45, 0x5f, 0x4c, 0x44, 0x4d, 0x10, 0x03, 0x2a, 0x64, 0x0a, 0x0a, 0x54, 0x32, 0x49, + 0x41, 0x64, 0x61, 0x70, 0x74, 0x65, 0x72, 0x12, 0x13, 0x0a, 0x0f, 0x54, 0x32, 0x49, 0x41, 0x44, + 0x41, 0x50, 0x54, 0x45, 0x52, 0x5f, 0x4e, 0x4f, 0x4e, 0x45, 0x10, 0x00, 0x12, 0x15, 0x0a, 0x11, + 0x54, 0x32, 0x49, 0x41, 0x44, 0x41, 0x50, 0x54, 0x45, 0x52, 0x5f, 0x53, 0x4b, 0x45, 0x54, 0x43, + 0x48, 0x10, 0x01, 0x12, 0x14, 0x0a, 0x10, 0x54, 0x32, 0x49, 0x41, 0x44, 0x41, 0x50, 0x54, 0x45, + 0x52, 0x5f, 0x44, 0x45, 0x50, 0x54, 0x48, 0x10, 0x02, 0x12, 0x14, 0x0a, 0x10, 0x54, 0x32, 0x49, + 0x41, 0x44, 0x41, 0x50, 0x54, 0x45, 0x52, 0x5f, 0x43, 0x41, 0x4e, 0x4e, 0x59, 0x10, 0x03, 0x2a, + 0x4c, 0x0a, 0x0e, 0x54, 0x32, 0x49, 0x41, 0x64, 0x61, 0x70, 0x74, 0x65, 0x72, 0x49, 0x6e, 0x69, + 0x74, 0x12, 0x18, 0x0a, 0x14, 0x54, 0x32, 0x49, 0x41, 0x44, 0x41, 0x50, 0x54, 0x45, 0x52, 0x49, + 0x4e, 0x49, 0x54, 0x5f, 0x49, 0x4d, 0x41, 0x47, 0x45, 0x10, 0x00, 0x12, 0x20, 0x0a, 0x1c, 0x54, + 0x32, 0x49, 0x41, 0x44, 0x41, 0x50, 0x54, 0x45, 0x52, 0x49, 0x4e, 0x49, 0x54, 0x5f, 0x41, 0x44, + 0x41, 0x50, 0x54, 0x45, 0x52, 0x5f, 0x49, 0x4d, 0x41, 0x47, 0x45, 0x10, 0x01, 0x2a, 0xa2, 0x01, + 0x0a, 0x06, 0x41, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x12, 0x16, 0x0a, 0x12, 0x41, 0x43, 0x54, 0x49, + 0x4f, 0x4e, 0x5f, 0x50, 0x41, 0x53, 0x53, 0x54, 0x48, 0x52, 0x4f, 0x55, 0x47, 0x48, 0x10, 0x00, + 0x12, 0x1f, 0x0a, 0x1b, 0x41, 0x43, 0x54, 0x49, 0x4f, 0x4e, 0x5f, 0x52, 0x45, 0x47, 0x45, 0x4e, + 0x45, 0x52, 0x41, 0x54, 0x45, 0x5f, 0x44, 0x55, 0x50, 0x4c, 0x49, 0x43, 0x41, 0x54, 0x45, 0x10, + 0x01, 0x12, 0x15, 0x0a, 0x11, 0x41, 0x43, 0x54, 0x49, 0x4f, 0x4e, 0x5f, 0x52, 0x45, 0x47, 0x45, + 0x4e, 0x45, 0x52, 0x41, 0x54, 0x45, 0x10, 0x02, 0x12, 0x1e, 0x0a, 0x1a, 0x41, 0x43, 0x54, 0x49, + 0x4f, 0x4e, 0x5f, 0x4f, 0x42, 0x46, 0x55, 0x53, 0x43, 0x41, 0x54, 0x45, 0x5f, 0x44, 0x55, 0x50, + 0x4c, 0x49, 0x43, 0x41, 0x54, 0x45, 0x10, 0x03, 0x12, 0x14, 0x0a, 0x10, 0x41, 0x43, 0x54, 0x49, + 0x4f, 0x4e, 0x5f, 0x4f, 0x42, 0x46, 0x55, 0x53, 0x43, 0x41, 0x54, 0x45, 0x10, 0x04, 0x12, 0x12, + 0x0a, 0x0e, 0x41, 0x43, 0x54, 0x49, 0x4f, 0x4e, 0x5f, 0x44, 0x49, 0x53, 0x43, 0x41, 0x52, 0x44, + 0x10, 0x05, 0x2a, 0x44, 0x0a, 0x0e, 0x43, 0x6c, 0x61, 0x73, 0x73, 0x69, 0x66, 0x69, 0x65, 0x72, + 0x4d, 0x6f, 0x64, 0x65, 0x12, 0x17, 0x0a, 0x13, 0x43, 0x4c, 0x53, 0x46, 0x52, 0x5f, 0x4d, 0x4f, + 0x44, 0x45, 0x5f, 0x5a, 0x45, 0x52, 0x4f, 0x53, 0x48, 0x4f, 0x54, 0x10, 0x00, 0x12, 0x19, 0x0a, + 0x15, 0x43, 0x4c, 0x53, 0x46, 0x52, 0x5f, 0x4d, 0x4f, 0x44, 0x45, 0x5f, 0x4d, 0x55, 0x4c, 0x54, + 0x49, 0x43, 0x4c, 0x41, 0x53, 0x53, 0x10, 0x01, 0x2a, 0x8c, 0x01, 0x0a, 0x0f, 0x49, 0x6e, 0x74, + 0x65, 0x72, 0x70, 0x6f, 0x6c, 0x61, 0x74, 0x65, 0x4d, 0x6f, 0x64, 0x65, 0x12, 0x16, 0x0a, 0x12, + 0x49, 0x4e, 0x54, 0x45, 0x52, 0x50, 0x4f, 0x4c, 0x41, 0x54, 0x45, 0x5f, 0x4c, 0x49, 0x4e, 0x45, + 0x41, 0x52, 0x10, 0x00, 0x12, 0x14, 0x0a, 0x10, 0x49, 0x4e, 0x54, 0x45, 0x52, 0x50, 0x4f, 0x4c, + 0x41, 0x54, 0x45, 0x5f, 0x52, 0x49, 0x46, 0x45, 0x10, 0x01, 0x12, 0x1a, 0x0a, 0x16, 0x49, 0x4e, + 0x54, 0x45, 0x52, 0x50, 0x4f, 0x4c, 0x41, 0x54, 0x45, 0x5f, 0x56, 0x41, 0x45, 0x5f, 0x4c, 0x49, + 0x4e, 0x45, 0x41, 0x52, 0x10, 0x02, 0x12, 0x19, 0x0a, 0x15, 0x49, 0x4e, 0x54, 0x45, 0x52, 0x50, + 0x4f, 0x4c, 0x41, 0x54, 0x45, 0x5f, 0x56, 0x41, 0x45, 0x5f, 0x53, 0x4c, 0x45, 0x52, 0x50, 0x10, + 0x03, 0x12, 0x14, 0x0a, 0x10, 0x49, 0x4e, 0x54, 0x45, 0x52, 0x50, 0x4f, 0x4c, 0x41, 0x54, 0x45, + 0x5f, 0x46, 0x49, 0x4c, 0x4d, 0x10, 0x04, 0x2a, 0x6c, 0x0a, 0x0a, 0x42, 0x6f, 0x72, 0x64, 0x65, + 0x72, 0x4d, 0x6f, 0x64, 0x65, 0x12, 0x12, 0x0a, 0x0e, 0x42, 0x4f, 0x52, 0x44, 0x45, 0x52, 0x5f, + 0x52, 0x45, 0x46, 0x4c, 0x45, 0x43, 0x54, 0x10, 0x00, 0x12, 0x14, 0x0a, 0x10, 0x42, 0x4f, 0x52, + 0x44, 0x45, 0x52, 0x5f, 0x52, 0x45, 0x50, 0x4c, 0x49, 0x43, 0x41, 0x54, 0x45, 0x10, 0x01, 0x12, + 0x0f, 0x0a, 0x0b, 0x42, 0x4f, 0x52, 0x44, 0x45, 0x52, 0x5f, 0x57, 0x52, 0x41, 0x50, 0x10, 0x02, + 0x12, 0x0f, 0x0a, 0x0b, 0x42, 0x4f, 0x52, 0x44, 0x45, 0x52, 0x5f, 0x5a, 0x45, 0x52, 0x4f, 0x10, + 0x03, 0x12, 0x12, 0x0a, 0x0e, 0x42, 0x4f, 0x52, 0x44, 0x45, 0x52, 0x5f, 0x50, 0x52, 0x45, 0x46, + 0x49, 0x4c, 0x4c, 0x10, 0x04, 0x2a, 0x4f, 0x0a, 0x0e, 0x43, 0x6f, 0x6c, 0x6f, 0x72, 0x4d, 0x61, + 0x74, 0x63, 0x68, 0x4d, 0x6f, 0x64, 0x65, 0x12, 0x13, 0x0a, 0x0f, 0x43, 0x4f, 0x4c, 0x4f, 0x52, + 0x5f, 0x4d, 0x41, 0x54, 0x43, 0x48, 0x5f, 0x48, 0x53, 0x56, 0x10, 0x00, 0x12, 0x13, 0x0a, 0x0f, + 0x43, 0x4f, 0x4c, 0x4f, 0x52, 0x5f, 0x4d, 0x41, 0x54, 0x43, 0x48, 0x5f, 0x4c, 0x41, 0x42, 0x10, + 0x01, 0x12, 0x13, 0x0a, 0x0f, 0x43, 0x4f, 0x4c, 0x4f, 0x52, 0x5f, 0x4d, 0x41, 0x54, 0x43, 0x48, + 0x5f, 0x52, 0x47, 0x42, 0x10, 0x02, 0x2a, 0x3d, 0x0a, 0x0a, 0x43, 0x61, 0x6d, 0x65, 0x72, 0x61, + 0x54, 0x79, 0x70, 0x65, 0x12, 0x16, 0x0a, 0x12, 0x43, 0x41, 0x4d, 0x45, 0x52, 0x41, 0x5f, 0x50, + 0x45, 0x52, 0x53, 0x50, 0x45, 0x43, 0x54, 0x49, 0x56, 0x45, 0x10, 0x00, 0x12, 0x17, 0x0a, 0x13, + 0x43, 0x41, 0x4d, 0x45, 0x52, 0x41, 0x5f, 0x4f, 0x52, 0x54, 0x48, 0x4f, 0x47, 0x52, 0x41, 0x50, + 0x48, 0x49, 0x43, 0x10, 0x01, 0x2a, 0x34, 0x0a, 0x0a, 0x52, 0x65, 0x6e, 0x64, 0x65, 0x72, 0x4d, + 0x6f, 0x64, 0x65, 0x12, 0x0f, 0x0a, 0x0b, 0x52, 0x45, 0x4e, 0x44, 0x45, 0x52, 0x5f, 0x4d, 0x45, + 0x53, 0x48, 0x10, 0x00, 0x12, 0x15, 0x0a, 0x11, 0x52, 0x45, 0x4e, 0x44, 0x45, 0x52, 0x5f, 0x50, + 0x4f, 0x49, 0x4e, 0x54, 0x43, 0x4c, 0x4f, 0x55, 0x44, 0x10, 0x01, 0x2a, 0x3d, 0x0a, 0x0b, 0x41, + 0x73, 0x73, 0x65, 0x74, 0x41, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x12, 0x0d, 0x0a, 0x09, 0x41, 0x53, + 0x53, 0x45, 0x54, 0x5f, 0x50, 0x55, 0x54, 0x10, 0x00, 0x12, 0x0d, 0x0a, 0x09, 0x41, 0x53, 0x53, + 0x45, 0x54, 0x5f, 0x47, 0x45, 0x54, 0x10, 0x01, 0x12, 0x10, 0x0a, 0x0c, 0x41, 0x53, 0x53, 0x45, + 0x54, 0x5f, 0x44, 0x45, 0x4c, 0x45, 0x54, 0x45, 0x10, 0x02, 0x2a, 0x81, 0x01, 0x0a, 0x08, 0x41, + 0x73, 0x73, 0x65, 0x74, 0x55, 0x73, 0x65, 0x12, 0x17, 0x0a, 0x13, 0x41, 0x53, 0x53, 0x45, 0x54, + 0x5f, 0x55, 0x53, 0x45, 0x5f, 0x55, 0x4e, 0x44, 0x45, 0x46, 0x49, 0x4e, 0x45, 0x44, 0x10, 0x00, + 0x12, 0x13, 0x0a, 0x0f, 0x41, 0x53, 0x53, 0x45, 0x54, 0x5f, 0x55, 0x53, 0x45, 0x5f, 0x49, 0x4e, + 0x50, 0x55, 0x54, 0x10, 0x01, 0x12, 0x14, 0x0a, 0x10, 0x41, 0x53, 0x53, 0x45, 0x54, 0x5f, 0x55, + 0x53, 0x45, 0x5f, 0x4f, 0x55, 0x54, 0x50, 0x55, 0x54, 0x10, 0x02, 0x12, 0x1a, 0x0a, 0x16, 0x41, + 0x53, 0x53, 0x45, 0x54, 0x5f, 0x55, 0x53, 0x45, 0x5f, 0x49, 0x4e, 0x54, 0x45, 0x52, 0x4d, 0x45, + 0x44, 0x49, 0x41, 0x54, 0x45, 0x10, 0x03, 0x12, 0x15, 0x0a, 0x11, 0x41, 0x53, 0x53, 0x45, 0x54, + 0x5f, 0x55, 0x53, 0x45, 0x5f, 0x50, 0x52, 0x4f, 0x4a, 0x45, 0x43, 0x54, 0x10, 0x04, 0x2a, 0x57, + 0x0a, 0x0b, 0x53, 0x74, 0x61, 0x67, 0x65, 0x41, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x12, 0x15, 0x0a, + 0x11, 0x53, 0x54, 0x41, 0x47, 0x45, 0x5f, 0x41, 0x43, 0x54, 0x49, 0x4f, 0x4e, 0x5f, 0x50, 0x41, + 0x53, 0x53, 0x10, 0x00, 0x12, 0x18, 0x0a, 0x14, 0x53, 0x54, 0x41, 0x47, 0x45, 0x5f, 0x41, 0x43, + 0x54, 0x49, 0x4f, 0x4e, 0x5f, 0x44, 0x49, 0x53, 0x43, 0x41, 0x52, 0x44, 0x10, 0x01, 0x12, 0x17, + 0x0a, 0x13, 0x53, 0x54, 0x41, 0x47, 0x45, 0x5f, 0x41, 0x43, 0x54, 0x49, 0x4f, 0x4e, 0x5f, 0x52, + 0x45, 0x54, 0x55, 0x52, 0x4e, 0x10, 0x02, 0x32, 0xff, 0x01, 0x0a, 0x11, 0x47, 0x65, 0x6e, 0x65, + 0x72, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x53, 0x65, 0x72, 0x76, 0x69, 0x63, 0x65, 0x12, 0x6f, 0x0a, + 0x08, 0x47, 0x65, 0x6e, 0x65, 0x72, 0x61, 0x74, 0x65, 0x12, 0x2f, 0x2e, 0x73, 0x74, 0x61, 0x62, + 0x69, 0x6c, 0x69, 0x74, 0x79, 0x61, 0x69, 0x2e, 0x70, 0x6c, 0x61, 0x74, 0x66, 0x6f, 0x72, 0x6d, + 0x61, 0x70, 0x69, 0x73, 0x2e, 0x67, 0x65, 0x6e, 0x65, 0x72, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x2e, + 0x76, 0x31, 0x2e, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x2e, 0x2e, 0x73, 0x74, 0x61, + 0x62, 0x69, 0x6c, 0x69, 0x74, 0x79, 0x61, 0x69, 0x2e, 0x70, 0x6c, 0x61, 0x74, 0x66, 0x6f, 0x72, + 0x6d, 0x61, 0x70, 0x69, 0x73, 0x2e, 0x67, 0x65, 0x6e, 0x65, 0x72, 0x61, 0x74, 0x69, 0x6f, 0x6e, + 0x2e, 0x76, 0x31, 0x2e, 0x41, 0x6e, 0x73, 0x77, 0x65, 0x72, 0x22, 0x00, 0x30, 0x01, 0x12, 0x79, + 0x0a, 0x0d, 0x43, 0x68, 0x61, 0x69, 0x6e, 0x47, 0x65, 0x6e, 0x65, 0x72, 0x61, 0x74, 0x65, 0x12, + 0x34, 0x2e, 0x73, 0x74, 0x61, 0x62, 0x69, 0x6c, 0x69, 0x74, 0x79, 0x61, 0x69, 0x2e, 0x70, 0x6c, + 0x61, 0x74, 0x66, 0x6f, 0x72, 0x6d, 0x61, 0x70, 0x69, 0x73, 0x2e, 0x67, 0x65, 0x6e, 0x65, 0x72, + 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x2e, 0x76, 0x31, 0x2e, 0x43, 0x68, 0x61, 0x69, 0x6e, 0x52, 0x65, + 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x2e, 0x2e, 0x73, 0x74, 0x61, 0x62, 0x69, 0x6c, 0x69, 0x74, + 0x79, 0x61, 0x69, 0x2e, 0x70, 0x6c, 0x61, 0x74, 0x66, 0x6f, 0x72, 0x6d, 0x61, 0x70, 0x69, 0x73, + 0x2e, 0x67, 0x65, 0x6e, 0x65, 0x72, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x2e, 0x76, 0x31, 0x2e, 0x41, + 0x6e, 0x73, 0x77, 0x65, 0x72, 0x22, 0x00, 0x30, 0x01, 0x42, 0xd6, 0x02, 0x0a, 0x2a, 0x63, 0x6f, + 0x6d, 0x2e, 0x73, 0x74, 0x61, 0x62, 0x69, 0x6c, 0x69, 0x74, 0x79, 0x61, 0x69, 0x2e, 0x70, 0x6c, + 0x61, 0x74, 0x66, 0x6f, 0x72, 0x6d, 0x61, 0x70, 0x69, 0x73, 0x2e, 0x67, 0x65, 0x6e, 0x65, 0x72, + 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x2e, 0x76, 0x31, 0x42, 0x0f, 0x47, 0x65, 0x6e, 0x65, 0x72, 0x61, + 0x74, 0x69, 0x6f, 0x6e, 0x50, 0x72, 0x6f, 0x74, 0x6f, 0x50, 0x01, 0x5a, 0x5c, 0x67, 0x69, 0x74, + 0x68, 0x75, 0x62, 0x2e, 0x63, 0x6f, 0x6d, 0x2f, 0x73, 0x74, 0x61, 0x62, 0x69, 0x6c, 0x69, 0x74, + 0x79, 0x2d, 0x61, 0x69, 0x2f, 0x61, 0x70, 0x69, 0x2d, 0x69, 0x6e, 0x74, 0x65, 0x72, 0x66, 0x61, + 0x63, 0x65, 0x73, 0x2f, 0x73, 0x72, 0x63, 0x2f, 0x73, 0x74, 0x61, 0x62, 0x69, 0x6c, 0x69, 0x74, + 0x79, 0x5f, 0x61, 0x70, 0x69, 0x2f, 0x70, 0x6c, 0x61, 0x74, 0x66, 0x6f, 0x72, 0x6d, 0x2f, 0x67, + 0x65, 0x6e, 0x65, 0x72, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x2f, 0x76, 0x31, 0x3b, 0x67, 0x65, 0x6e, + 0x65, 0x72, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x76, 0x31, 0xa2, 0x02, 0x03, 0x53, 0x50, 0x47, 0xaa, + 0x02, 0x26, 0x53, 0x74, 0x61, 0x62, 0x69, 0x6c, 0x69, 0x74, 0x79, 0x61, 0x69, 0x2e, 0x50, 0x6c, + 0x61, 0x74, 0x66, 0x6f, 0x72, 0x6d, 0x61, 0x70, 0x69, 0x73, 0x2e, 0x47, 0x65, 0x6e, 0x65, 0x72, + 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x2e, 0x56, 0x31, 0xca, 0x02, 0x26, 0x53, 0x74, 0x61, 0x62, 0x69, + 0x6c, 0x69, 0x74, 0x79, 0x61, 0x69, 0x5c, 0x50, 0x6c, 0x61, 0x74, 0x66, 0x6f, 0x72, 0x6d, 0x61, + 0x70, 0x69, 0x73, 0x5c, 0x47, 0x65, 0x6e, 0x65, 0x72, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x5c, 0x56, + 0x31, 0xe2, 0x02, 0x32, 0x53, 0x74, 0x61, 0x62, 0x69, 0x6c, 0x69, 0x74, 0x79, 0x61, 0x69, 0x5c, + 0x50, 0x6c, 0x61, 0x74, 0x66, 0x6f, 0x72, 0x6d, 0x61, 0x70, 0x69, 0x73, 0x5c, 0x47, 0x65, 0x6e, + 0x65, 0x72, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x5c, 0x56, 0x31, 0x5c, 0x47, 0x50, 0x42, 0x4d, 0x65, + 0x74, 0x61, 0x64, 0x61, 0x74, 0x61, 0xea, 0x02, 0x29, 0x53, 0x74, 0x61, 0x62, 0x69, 0x6c, 0x69, + 0x74, 0x79, 0x61, 0x69, 0x3a, 0x3a, 0x50, 0x6c, 0x61, 0x74, 0x66, 0x6f, 0x72, 0x6d, 0x61, 0x70, + 0x69, 0x73, 0x3a, 0x3a, 0x47, 0x65, 0x6e, 0x65, 0x72, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x3a, 0x3a, + 0x56, 0x31, 0x62, 0x06, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x33, +} + +var ( + file_stability_api_platform_generation_v1_generation_proto_rawDescOnce sync.Once + file_stability_api_platform_generation_v1_generation_proto_rawDescData = file_stability_api_platform_generation_v1_generation_proto_rawDesc +) + +func file_stability_api_platform_generation_v1_generation_proto_rawDescGZIP() []byte { + file_stability_api_platform_generation_v1_generation_proto_rawDescOnce.Do(func() { + file_stability_api_platform_generation_v1_generation_proto_rawDescData = protoimpl.X.CompressGZIP(file_stability_api_platform_generation_v1_generation_proto_rawDescData) + }) + return file_stability_api_platform_generation_v1_generation_proto_rawDescData +} + +var file_stability_api_platform_generation_v1_generation_proto_enumTypes = make([]protoimpl.EnumInfo, 21) +var file_stability_api_platform_generation_v1_generation_proto_msgTypes = make([]protoimpl.MessageInfo, 38) +var file_stability_api_platform_generation_v1_generation_proto_goTypes = []interface{}{ + (FinishReason)(0), // 0: stabilityai.platformapis.generation.v1.FinishReason + (ArtifactType)(0), // 1: stabilityai.platformapis.generation.v1.ArtifactType + (MaskedAreaInit)(0), // 2: stabilityai.platformapis.generation.v1.MaskedAreaInit + (WeightMethod)(0), // 3: stabilityai.platformapis.generation.v1.WeightMethod + (DiffusionSampler)(0), // 4: stabilityai.platformapis.generation.v1.DiffusionSampler + (Upscaler)(0), // 5: stabilityai.platformapis.generation.v1.Upscaler + (GuidancePreset)(0), // 6: stabilityai.platformapis.generation.v1.GuidancePreset + (ModelArchitecture)(0), // 7: stabilityai.platformapis.generation.v1.ModelArchitecture + (T2IAdapter)(0), // 8: stabilityai.platformapis.generation.v1.T2IAdapter + (T2IAdapterInit)(0), // 9: stabilityai.platformapis.generation.v1.T2IAdapterInit + (Action)(0), // 10: stabilityai.platformapis.generation.v1.Action + (ClassifierMode)(0), // 11: stabilityai.platformapis.generation.v1.ClassifierMode + (InterpolateMode)(0), // 12: stabilityai.platformapis.generation.v1.InterpolateMode + (BorderMode)(0), // 13: stabilityai.platformapis.generation.v1.BorderMode + (ColorMatchMode)(0), // 14: stabilityai.platformapis.generation.v1.ColorMatchMode + (CameraType)(0), // 15: stabilityai.platformapis.generation.v1.CameraType + (RenderMode)(0), // 16: stabilityai.platformapis.generation.v1.RenderMode + (AssetAction)(0), // 17: stabilityai.platformapis.generation.v1.AssetAction + (AssetUse)(0), // 18: stabilityai.platformapis.generation.v1.AssetUse + (StageAction)(0), // 19: stabilityai.platformapis.generation.v1.StageAction + (ContentCredentialsParameters_ModelMetadata)(0), // 20: stabilityai.platformapis.generation.v1.ContentCredentialsParameters.ModelMetadata + (*Token)(nil), // 21: stabilityai.platformapis.generation.v1.Token + (*Tokens)(nil), // 22: stabilityai.platformapis.generation.v1.Tokens + (*Artifact)(nil), // 23: stabilityai.platformapis.generation.v1.Artifact + (*PromptParameters)(nil), // 24: stabilityai.platformapis.generation.v1.PromptParameters + (*Prompt)(nil), // 25: stabilityai.platformapis.generation.v1.Prompt + (*SamplerParameters)(nil), // 26: stabilityai.platformapis.generation.v1.SamplerParameters + (*ConditionerParameters)(nil), // 27: stabilityai.platformapis.generation.v1.ConditionerParameters + (*ScheduleParameters)(nil), // 28: stabilityai.platformapis.generation.v1.ScheduleParameters + (*StepParameter)(nil), // 29: stabilityai.platformapis.generation.v1.StepParameter + (*Model)(nil), // 30: stabilityai.platformapis.generation.v1.Model + (*CutoutParameters)(nil), // 31: stabilityai.platformapis.generation.v1.CutoutParameters + (*GuidanceScheduleParameters)(nil), // 32: stabilityai.platformapis.generation.v1.GuidanceScheduleParameters + (*GuidanceInstanceParameters)(nil), // 33: stabilityai.platformapis.generation.v1.GuidanceInstanceParameters + (*GuidanceParameters)(nil), // 34: stabilityai.platformapis.generation.v1.GuidanceParameters + (*TransformType)(nil), // 35: stabilityai.platformapis.generation.v1.TransformType + (*T2IAdapterParameter)(nil), // 36: stabilityai.platformapis.generation.v1.T2IAdapterParameter + (*ContentCredentialsParameters)(nil), // 37: stabilityai.platformapis.generation.v1.ContentCredentialsParameters + (*FineTuningParameters)(nil), // 38: stabilityai.platformapis.generation.v1.FineTuningParameters + (*ImageParameters)(nil), // 39: stabilityai.platformapis.generation.v1.ImageParameters + (*ClassifierConcept)(nil), // 40: stabilityai.platformapis.generation.v1.ClassifierConcept + (*ClassifierCategory)(nil), // 41: stabilityai.platformapis.generation.v1.ClassifierCategory + (*ClassifierParameters)(nil), // 42: stabilityai.platformapis.generation.v1.ClassifierParameters + (*InterpolateParameters)(nil), // 43: stabilityai.platformapis.generation.v1.InterpolateParameters + (*TransformColorAdjust)(nil), // 44: stabilityai.platformapis.generation.v1.TransformColorAdjust + (*TransformDepthCalc)(nil), // 45: stabilityai.platformapis.generation.v1.TransformDepthCalc + (*TransformMatrix)(nil), // 46: stabilityai.platformapis.generation.v1.TransformMatrix + (*TransformResample)(nil), // 47: stabilityai.platformapis.generation.v1.TransformResample + (*CameraParameters)(nil), // 48: stabilityai.platformapis.generation.v1.CameraParameters + (*TransformCameraPose)(nil), // 49: stabilityai.platformapis.generation.v1.TransformCameraPose + (*TransformParameters)(nil), // 50: stabilityai.platformapis.generation.v1.TransformParameters + (*AssetParameters)(nil), // 51: stabilityai.platformapis.generation.v1.AssetParameters + (*AnswerMeta)(nil), // 52: stabilityai.platformapis.generation.v1.AnswerMeta + (*Answer)(nil), // 53: stabilityai.platformapis.generation.v1.Answer + (*AnswerBatch)(nil), // 54: stabilityai.platformapis.generation.v1.AnswerBatch + (*Request)(nil), // 55: stabilityai.platformapis.generation.v1.Request + (*OnStatus)(nil), // 56: stabilityai.platformapis.generation.v1.OnStatus + (*Stage)(nil), // 57: stabilityai.platformapis.generation.v1.Stage + (*ChainRequest)(nil), // 58: stabilityai.platformapis.generation.v1.ChainRequest + (*tensors.Tensor)(nil), // 59: tensors.Tensor + (*structpb.Struct)(nil), // 60: google.protobuf.Struct +} +var file_stability_api_platform_generation_v1_generation_proto_depIdxs = []int32{ + 21, // 0: stabilityai.platformapis.generation.v1.Tokens.tokens:type_name -> stabilityai.platformapis.generation.v1.Token + 1, // 1: stabilityai.platformapis.generation.v1.Artifact.type:type_name -> stabilityai.platformapis.generation.v1.ArtifactType + 22, // 2: stabilityai.platformapis.generation.v1.Artifact.tokens:type_name -> stabilityai.platformapis.generation.v1.Tokens + 42, // 3: stabilityai.platformapis.generation.v1.Artifact.classifier:type_name -> stabilityai.platformapis.generation.v1.ClassifierParameters + 59, // 4: stabilityai.platformapis.generation.v1.Artifact.tensor:type_name -> tensors.Tensor + 0, // 5: stabilityai.platformapis.generation.v1.Artifact.finish_reason:type_name -> stabilityai.platformapis.generation.v1.FinishReason + 24, // 6: stabilityai.platformapis.generation.v1.Prompt.parameters:type_name -> stabilityai.platformapis.generation.v1.PromptParameters + 22, // 7: stabilityai.platformapis.generation.v1.Prompt.tokens:type_name -> stabilityai.platformapis.generation.v1.Tokens + 23, // 8: stabilityai.platformapis.generation.v1.Prompt.artifact:type_name -> stabilityai.platformapis.generation.v1.Artifact + 30, // 9: stabilityai.platformapis.generation.v1.ConditionerParameters.conditioner:type_name -> stabilityai.platformapis.generation.v1.Model + 26, // 10: stabilityai.platformapis.generation.v1.StepParameter.sampler:type_name -> stabilityai.platformapis.generation.v1.SamplerParameters + 28, // 11: stabilityai.platformapis.generation.v1.StepParameter.schedule:type_name -> stabilityai.platformapis.generation.v1.ScheduleParameters + 34, // 12: stabilityai.platformapis.generation.v1.StepParameter.guidance:type_name -> stabilityai.platformapis.generation.v1.GuidanceParameters + 7, // 13: stabilityai.platformapis.generation.v1.Model.architecture:type_name -> stabilityai.platformapis.generation.v1.ModelArchitecture + 31, // 14: stabilityai.platformapis.generation.v1.CutoutParameters.cutouts:type_name -> stabilityai.platformapis.generation.v1.CutoutParameters + 30, // 15: stabilityai.platformapis.generation.v1.GuidanceInstanceParameters.models:type_name -> stabilityai.platformapis.generation.v1.Model + 32, // 16: stabilityai.platformapis.generation.v1.GuidanceInstanceParameters.schedule:type_name -> stabilityai.platformapis.generation.v1.GuidanceScheduleParameters + 31, // 17: stabilityai.platformapis.generation.v1.GuidanceInstanceParameters.cutouts:type_name -> stabilityai.platformapis.generation.v1.CutoutParameters + 25, // 18: stabilityai.platformapis.generation.v1.GuidanceInstanceParameters.prompt:type_name -> stabilityai.platformapis.generation.v1.Prompt + 6, // 19: stabilityai.platformapis.generation.v1.GuidanceParameters.guidance_preset:type_name -> stabilityai.platformapis.generation.v1.GuidancePreset + 33, // 20: stabilityai.platformapis.generation.v1.GuidanceParameters.instances:type_name -> stabilityai.platformapis.generation.v1.GuidanceInstanceParameters + 4, // 21: stabilityai.platformapis.generation.v1.TransformType.diffusion:type_name -> stabilityai.platformapis.generation.v1.DiffusionSampler + 5, // 22: stabilityai.platformapis.generation.v1.TransformType.upscaler:type_name -> stabilityai.platformapis.generation.v1.Upscaler + 8, // 23: stabilityai.platformapis.generation.v1.T2IAdapterParameter.adapter_type:type_name -> stabilityai.platformapis.generation.v1.T2IAdapter + 9, // 24: stabilityai.platformapis.generation.v1.T2IAdapterParameter.adapter_init_type:type_name -> stabilityai.platformapis.generation.v1.T2IAdapterInit + 20, // 25: stabilityai.platformapis.generation.v1.ContentCredentialsParameters.model_metadata:type_name -> stabilityai.platformapis.generation.v1.ContentCredentialsParameters.ModelMetadata + 35, // 26: stabilityai.platformapis.generation.v1.ImageParameters.transform:type_name -> stabilityai.platformapis.generation.v1.TransformType + 29, // 27: stabilityai.platformapis.generation.v1.ImageParameters.parameters:type_name -> stabilityai.platformapis.generation.v1.StepParameter + 2, // 28: stabilityai.platformapis.generation.v1.ImageParameters.masked_area_init:type_name -> stabilityai.platformapis.generation.v1.MaskedAreaInit + 3, // 29: stabilityai.platformapis.generation.v1.ImageParameters.weight_method:type_name -> stabilityai.platformapis.generation.v1.WeightMethod + 36, // 30: stabilityai.platformapis.generation.v1.ImageParameters.adapter:type_name -> stabilityai.platformapis.generation.v1.T2IAdapterParameter + 38, // 31: stabilityai.platformapis.generation.v1.ImageParameters.fine_tuning_parameters:type_name -> stabilityai.platformapis.generation.v1.FineTuningParameters + 37, // 32: stabilityai.platformapis.generation.v1.ImageParameters.content_credentials_parameters:type_name -> stabilityai.platformapis.generation.v1.ContentCredentialsParameters + 40, // 33: stabilityai.platformapis.generation.v1.ClassifierCategory.concepts:type_name -> stabilityai.platformapis.generation.v1.ClassifierConcept + 10, // 34: stabilityai.platformapis.generation.v1.ClassifierCategory.action:type_name -> stabilityai.platformapis.generation.v1.Action + 11, // 35: stabilityai.platformapis.generation.v1.ClassifierCategory.classifier_mode:type_name -> stabilityai.platformapis.generation.v1.ClassifierMode + 41, // 36: stabilityai.platformapis.generation.v1.ClassifierParameters.categories:type_name -> stabilityai.platformapis.generation.v1.ClassifierCategory + 41, // 37: stabilityai.platformapis.generation.v1.ClassifierParameters.exceeds:type_name -> stabilityai.platformapis.generation.v1.ClassifierCategory + 10, // 38: stabilityai.platformapis.generation.v1.ClassifierParameters.realized_action:type_name -> stabilityai.platformapis.generation.v1.Action + 12, // 39: stabilityai.platformapis.generation.v1.InterpolateParameters.mode:type_name -> stabilityai.platformapis.generation.v1.InterpolateMode + 23, // 40: stabilityai.platformapis.generation.v1.TransformColorAdjust.match_image:type_name -> stabilityai.platformapis.generation.v1.Artifact + 14, // 41: stabilityai.platformapis.generation.v1.TransformColorAdjust.match_mode:type_name -> stabilityai.platformapis.generation.v1.ColorMatchMode + 13, // 42: stabilityai.platformapis.generation.v1.TransformResample.border_mode:type_name -> stabilityai.platformapis.generation.v1.BorderMode + 46, // 43: stabilityai.platformapis.generation.v1.TransformResample.transform:type_name -> stabilityai.platformapis.generation.v1.TransformMatrix + 46, // 44: stabilityai.platformapis.generation.v1.TransformResample.prev_transform:type_name -> stabilityai.platformapis.generation.v1.TransformMatrix + 15, // 45: stabilityai.platformapis.generation.v1.CameraParameters.camera_type:type_name -> stabilityai.platformapis.generation.v1.CameraType + 46, // 46: stabilityai.platformapis.generation.v1.TransformCameraPose.world_to_view_matrix:type_name -> stabilityai.platformapis.generation.v1.TransformMatrix + 48, // 47: stabilityai.platformapis.generation.v1.TransformCameraPose.camera_parameters:type_name -> stabilityai.platformapis.generation.v1.CameraParameters + 16, // 48: stabilityai.platformapis.generation.v1.TransformCameraPose.render_mode:type_name -> stabilityai.platformapis.generation.v1.RenderMode + 44, // 49: stabilityai.platformapis.generation.v1.TransformParameters.color_adjust:type_name -> stabilityai.platformapis.generation.v1.TransformColorAdjust + 45, // 50: stabilityai.platformapis.generation.v1.TransformParameters.depth_calc:type_name -> stabilityai.platformapis.generation.v1.TransformDepthCalc + 47, // 51: stabilityai.platformapis.generation.v1.TransformParameters.resample:type_name -> stabilityai.platformapis.generation.v1.TransformResample + 49, // 52: stabilityai.platformapis.generation.v1.TransformParameters.camera_pose:type_name -> stabilityai.platformapis.generation.v1.TransformCameraPose + 17, // 53: stabilityai.platformapis.generation.v1.AssetParameters.action:type_name -> stabilityai.platformapis.generation.v1.AssetAction + 18, // 54: stabilityai.platformapis.generation.v1.AssetParameters.use:type_name -> stabilityai.platformapis.generation.v1.AssetUse + 52, // 55: stabilityai.platformapis.generation.v1.Answer.meta:type_name -> stabilityai.platformapis.generation.v1.AnswerMeta + 23, // 56: stabilityai.platformapis.generation.v1.Answer.artifacts:type_name -> stabilityai.platformapis.generation.v1.Artifact + 53, // 57: stabilityai.platformapis.generation.v1.AnswerBatch.answers:type_name -> stabilityai.platformapis.generation.v1.Answer + 1, // 58: stabilityai.platformapis.generation.v1.Request.requested_type:type_name -> stabilityai.platformapis.generation.v1.ArtifactType + 25, // 59: stabilityai.platformapis.generation.v1.Request.prompt:type_name -> stabilityai.platformapis.generation.v1.Prompt + 39, // 60: stabilityai.platformapis.generation.v1.Request.image:type_name -> stabilityai.platformapis.generation.v1.ImageParameters + 42, // 61: stabilityai.platformapis.generation.v1.Request.classifier:type_name -> stabilityai.platformapis.generation.v1.ClassifierParameters + 51, // 62: stabilityai.platformapis.generation.v1.Request.asset:type_name -> stabilityai.platformapis.generation.v1.AssetParameters + 43, // 63: stabilityai.platformapis.generation.v1.Request.interpolate:type_name -> stabilityai.platformapis.generation.v1.InterpolateParameters + 50, // 64: stabilityai.platformapis.generation.v1.Request.transform:type_name -> stabilityai.platformapis.generation.v1.TransformParameters + 27, // 65: stabilityai.platformapis.generation.v1.Request.conditioner:type_name -> stabilityai.platformapis.generation.v1.ConditionerParameters + 60, // 66: stabilityai.platformapis.generation.v1.Request.extras:type_name -> google.protobuf.Struct + 0, // 67: stabilityai.platformapis.generation.v1.OnStatus.reason:type_name -> stabilityai.platformapis.generation.v1.FinishReason + 19, // 68: stabilityai.platformapis.generation.v1.OnStatus.action:type_name -> stabilityai.platformapis.generation.v1.StageAction + 55, // 69: stabilityai.platformapis.generation.v1.Stage.request:type_name -> stabilityai.platformapis.generation.v1.Request + 56, // 70: stabilityai.platformapis.generation.v1.Stage.on_status:type_name -> stabilityai.platformapis.generation.v1.OnStatus + 57, // 71: stabilityai.platformapis.generation.v1.ChainRequest.stage:type_name -> stabilityai.platformapis.generation.v1.Stage + 55, // 72: stabilityai.platformapis.generation.v1.GenerationService.Generate:input_type -> stabilityai.platformapis.generation.v1.Request + 58, // 73: stabilityai.platformapis.generation.v1.GenerationService.ChainGenerate:input_type -> stabilityai.platformapis.generation.v1.ChainRequest + 53, // 74: stabilityai.platformapis.generation.v1.GenerationService.Generate:output_type -> stabilityai.platformapis.generation.v1.Answer + 53, // 75: stabilityai.platformapis.generation.v1.GenerationService.ChainGenerate:output_type -> stabilityai.platformapis.generation.v1.Answer + 74, // [74:76] is the sub-list for method output_type + 72, // [72:74] is the sub-list for method input_type + 72, // [72:72] is the sub-list for extension type_name + 72, // [72:72] is the sub-list for extension extendee + 0, // [0:72] is the sub-list for field type_name +} + +func init() { file_stability_api_platform_generation_v1_generation_proto_init() } +func file_stability_api_platform_generation_v1_generation_proto_init() { + if File_stability_api_platform_generation_v1_generation_proto != nil { + return + } + if !protoimpl.UnsafeEnabled { + file_stability_api_platform_generation_v1_generation_proto_msgTypes[0].Exporter = func(v interface{}, i int) interface{} { + switch v := v.(*Token); i { + case 0: + return &v.state + case 1: + return &v.sizeCache + case 2: + return &v.unknownFields + default: + return nil + } + } + file_stability_api_platform_generation_v1_generation_proto_msgTypes[1].Exporter = func(v interface{}, i int) interface{} { + switch v := v.(*Tokens); i { + case 0: + return &v.state + case 1: + return &v.sizeCache + case 2: + return &v.unknownFields + default: + return nil + } + } + file_stability_api_platform_generation_v1_generation_proto_msgTypes[2].Exporter = func(v interface{}, i int) interface{} { + switch v := v.(*Artifact); i { + case 0: + return &v.state + case 1: + return &v.sizeCache + case 2: + return &v.unknownFields + default: + return nil + } + } + file_stability_api_platform_generation_v1_generation_proto_msgTypes[3].Exporter = func(v interface{}, i int) interface{} { + switch v := v.(*PromptParameters); i { + case 0: + return &v.state + case 1: + return &v.sizeCache + case 2: + return &v.unknownFields + default: + return nil + } + } + file_stability_api_platform_generation_v1_generation_proto_msgTypes[4].Exporter = func(v interface{}, i int) interface{} { + switch v := v.(*Prompt); i { + case 0: + return &v.state + case 1: + return &v.sizeCache + case 2: + return &v.unknownFields + default: + return nil + } + } + file_stability_api_platform_generation_v1_generation_proto_msgTypes[5].Exporter = func(v interface{}, i int) interface{} { + switch v := v.(*SamplerParameters); i { + case 0: + return &v.state + case 1: + return &v.sizeCache + case 2: + return &v.unknownFields + default: + return nil + } + } + file_stability_api_platform_generation_v1_generation_proto_msgTypes[6].Exporter = func(v interface{}, i int) interface{} { + switch v := v.(*ConditionerParameters); i { + case 0: + return &v.state + case 1: + return &v.sizeCache + case 2: + return &v.unknownFields + default: + return nil + } + } + file_stability_api_platform_generation_v1_generation_proto_msgTypes[7].Exporter = func(v interface{}, i int) interface{} { + switch v := v.(*ScheduleParameters); i { + case 0: + return &v.state + case 1: + return &v.sizeCache + case 2: + return &v.unknownFields + default: + return nil + } + } + file_stability_api_platform_generation_v1_generation_proto_msgTypes[8].Exporter = func(v interface{}, i int) interface{} { + switch v := v.(*StepParameter); i { + case 0: + return &v.state + case 1: + return &v.sizeCache + case 2: + return &v.unknownFields + default: + return nil + } + } + file_stability_api_platform_generation_v1_generation_proto_msgTypes[9].Exporter = func(v interface{}, i int) interface{} { + switch v := v.(*Model); i { + case 0: + return &v.state + case 1: + return &v.sizeCache + case 2: + return &v.unknownFields + default: + return nil + } + } + file_stability_api_platform_generation_v1_generation_proto_msgTypes[10].Exporter = func(v interface{}, i int) interface{} { + switch v := v.(*CutoutParameters); i { + case 0: + return &v.state + case 1: + return &v.sizeCache + case 2: + return &v.unknownFields + default: + return nil + } + } + file_stability_api_platform_generation_v1_generation_proto_msgTypes[11].Exporter = func(v interface{}, i int) interface{} { + switch v := v.(*GuidanceScheduleParameters); i { + case 0: + return &v.state + case 1: + return &v.sizeCache + case 2: + return &v.unknownFields + default: + return nil + } + } + file_stability_api_platform_generation_v1_generation_proto_msgTypes[12].Exporter = func(v interface{}, i int) interface{} { + switch v := v.(*GuidanceInstanceParameters); i { + case 0: + return &v.state + case 1: + return &v.sizeCache + case 2: + return &v.unknownFields + default: + return nil + } + } + file_stability_api_platform_generation_v1_generation_proto_msgTypes[13].Exporter = func(v interface{}, i int) interface{} { + switch v := v.(*GuidanceParameters); i { + case 0: + return &v.state + case 1: + return &v.sizeCache + case 2: + return &v.unknownFields + default: + return nil + } + } + file_stability_api_platform_generation_v1_generation_proto_msgTypes[14].Exporter = func(v interface{}, i int) interface{} { + switch v := v.(*TransformType); i { + case 0: + return &v.state + case 1: + return &v.sizeCache + case 2: + return &v.unknownFields + default: + return nil + } + } + file_stability_api_platform_generation_v1_generation_proto_msgTypes[15].Exporter = func(v interface{}, i int) interface{} { + switch v := v.(*T2IAdapterParameter); i { + case 0: + return &v.state + case 1: + return &v.sizeCache + case 2: + return &v.unknownFields + default: + return nil + } + } + file_stability_api_platform_generation_v1_generation_proto_msgTypes[16].Exporter = func(v interface{}, i int) interface{} { + switch v := v.(*ContentCredentialsParameters); i { + case 0: + return &v.state + case 1: + return &v.sizeCache + case 2: + return &v.unknownFields + default: + return nil + } + } + file_stability_api_platform_generation_v1_generation_proto_msgTypes[17].Exporter = func(v interface{}, i int) interface{} { + switch v := v.(*FineTuningParameters); i { + case 0: + return &v.state + case 1: + return &v.sizeCache + case 2: + return &v.unknownFields + default: + return nil + } + } + file_stability_api_platform_generation_v1_generation_proto_msgTypes[18].Exporter = func(v interface{}, i int) interface{} { + switch v := v.(*ImageParameters); i { + case 0: + return &v.state + case 1: + return &v.sizeCache + case 2: + return &v.unknownFields + default: + return nil + } + } + file_stability_api_platform_generation_v1_generation_proto_msgTypes[19].Exporter = func(v interface{}, i int) interface{} { + switch v := v.(*ClassifierConcept); i { + case 0: + return &v.state + case 1: + return &v.sizeCache + case 2: + return &v.unknownFields + default: + return nil + } + } + file_stability_api_platform_generation_v1_generation_proto_msgTypes[20].Exporter = func(v interface{}, i int) interface{} { + switch v := v.(*ClassifierCategory); i { + case 0: + return &v.state + case 1: + return &v.sizeCache + case 2: + return &v.unknownFields + default: + return nil + } + } + file_stability_api_platform_generation_v1_generation_proto_msgTypes[21].Exporter = func(v interface{}, i int) interface{} { + switch v := v.(*ClassifierParameters); i { + case 0: + return &v.state + case 1: + return &v.sizeCache + case 2: + return &v.unknownFields + default: + return nil + } + } + file_stability_api_platform_generation_v1_generation_proto_msgTypes[22].Exporter = func(v interface{}, i int) interface{} { + switch v := v.(*InterpolateParameters); i { + case 0: + return &v.state + case 1: + return &v.sizeCache + case 2: + return &v.unknownFields + default: + return nil + } + } + file_stability_api_platform_generation_v1_generation_proto_msgTypes[23].Exporter = func(v interface{}, i int) interface{} { + switch v := v.(*TransformColorAdjust); i { + case 0: + return &v.state + case 1: + return &v.sizeCache + case 2: + return &v.unknownFields + default: + return nil + } + } + file_stability_api_platform_generation_v1_generation_proto_msgTypes[24].Exporter = func(v interface{}, i int) interface{} { + switch v := v.(*TransformDepthCalc); i { + case 0: + return &v.state + case 1: + return &v.sizeCache + case 2: + return &v.unknownFields + default: + return nil + } + } + file_stability_api_platform_generation_v1_generation_proto_msgTypes[25].Exporter = func(v interface{}, i int) interface{} { + switch v := v.(*TransformMatrix); i { + case 0: + return &v.state + case 1: + return &v.sizeCache + case 2: + return &v.unknownFields + default: + return nil + } + } + file_stability_api_platform_generation_v1_generation_proto_msgTypes[26].Exporter = func(v interface{}, i int) interface{} { + switch v := v.(*TransformResample); i { + case 0: + return &v.state + case 1: + return &v.sizeCache + case 2: + return &v.unknownFields + default: + return nil + } + } + file_stability_api_platform_generation_v1_generation_proto_msgTypes[27].Exporter = func(v interface{}, i int) interface{} { + switch v := v.(*CameraParameters); i { + case 0: + return &v.state + case 1: + return &v.sizeCache + case 2: + return &v.unknownFields + default: + return nil + } + } + file_stability_api_platform_generation_v1_generation_proto_msgTypes[28].Exporter = func(v interface{}, i int) interface{} { + switch v := v.(*TransformCameraPose); i { + case 0: + return &v.state + case 1: + return &v.sizeCache + case 2: + return &v.unknownFields + default: + return nil + } + } + file_stability_api_platform_generation_v1_generation_proto_msgTypes[29].Exporter = func(v interface{}, i int) interface{} { + switch v := v.(*TransformParameters); i { + case 0: + return &v.state + case 1: + return &v.sizeCache + case 2: + return &v.unknownFields + default: + return nil + } + } + file_stability_api_platform_generation_v1_generation_proto_msgTypes[30].Exporter = func(v interface{}, i int) interface{} { + switch v := v.(*AssetParameters); i { + case 0: + return &v.state + case 1: + return &v.sizeCache + case 2: + return &v.unknownFields + default: + return nil + } + } + file_stability_api_platform_generation_v1_generation_proto_msgTypes[31].Exporter = func(v interface{}, i int) interface{} { + switch v := v.(*AnswerMeta); i { + case 0: + return &v.state + case 1: + return &v.sizeCache + case 2: + return &v.unknownFields + default: + return nil + } + } + file_stability_api_platform_generation_v1_generation_proto_msgTypes[32].Exporter = func(v interface{}, i int) interface{} { + switch v := v.(*Answer); i { + case 0: + return &v.state + case 1: + return &v.sizeCache + case 2: + return &v.unknownFields + default: + return nil + } + } + file_stability_api_platform_generation_v1_generation_proto_msgTypes[33].Exporter = func(v interface{}, i int) interface{} { + switch v := v.(*AnswerBatch); i { + case 0: + return &v.state + case 1: + return &v.sizeCache + case 2: + return &v.unknownFields + default: + return nil + } + } + file_stability_api_platform_generation_v1_generation_proto_msgTypes[34].Exporter = func(v interface{}, i int) interface{} { + switch v := v.(*Request); i { + case 0: + return &v.state + case 1: + return &v.sizeCache + case 2: + return &v.unknownFields + default: + return nil + } + } + file_stability_api_platform_generation_v1_generation_proto_msgTypes[35].Exporter = func(v interface{}, i int) interface{} { + switch v := v.(*OnStatus); i { + case 0: + return &v.state + case 1: + return &v.sizeCache + case 2: + return &v.unknownFields + default: + return nil + } + } + file_stability_api_platform_generation_v1_generation_proto_msgTypes[36].Exporter = func(v interface{}, i int) interface{} { + switch v := v.(*Stage); i { + case 0: + return &v.state + case 1: + return &v.sizeCache + case 2: + return &v.unknownFields + default: + return nil + } + } + file_stability_api_platform_generation_v1_generation_proto_msgTypes[37].Exporter = func(v interface{}, i int) interface{} { + switch v := v.(*ChainRequest); i { + case 0: + return &v.state + case 1: + return &v.sizeCache + case 2: + return &v.unknownFields + default: + return nil + } + } + } + file_stability_api_platform_generation_v1_generation_proto_msgTypes[0].OneofWrappers = []interface{}{} + file_stability_api_platform_generation_v1_generation_proto_msgTypes[1].OneofWrappers = []interface{}{} + file_stability_api_platform_generation_v1_generation_proto_msgTypes[2].OneofWrappers = []interface{}{ + (*Artifact_Binary)(nil), + (*Artifact_Text)(nil), + (*Artifact_Tokens)(nil), + (*Artifact_Classifier)(nil), + (*Artifact_Tensor)(nil), + } + file_stability_api_platform_generation_v1_generation_proto_msgTypes[3].OneofWrappers = []interface{}{} + file_stability_api_platform_generation_v1_generation_proto_msgTypes[4].OneofWrappers = []interface{}{ + (*Prompt_Text)(nil), + (*Prompt_Tokens)(nil), + (*Prompt_Artifact)(nil), + } + file_stability_api_platform_generation_v1_generation_proto_msgTypes[5].OneofWrappers = []interface{}{} + file_stability_api_platform_generation_v1_generation_proto_msgTypes[6].OneofWrappers = []interface{}{} + file_stability_api_platform_generation_v1_generation_proto_msgTypes[7].OneofWrappers = []interface{}{} + file_stability_api_platform_generation_v1_generation_proto_msgTypes[8].OneofWrappers = []interface{}{} + file_stability_api_platform_generation_v1_generation_proto_msgTypes[10].OneofWrappers = []interface{}{} + file_stability_api_platform_generation_v1_generation_proto_msgTypes[12].OneofWrappers = []interface{}{} + file_stability_api_platform_generation_v1_generation_proto_msgTypes[14].OneofWrappers = []interface{}{ + (*TransformType_Diffusion)(nil), + (*TransformType_Upscaler)(nil), + } + file_stability_api_platform_generation_v1_generation_proto_msgTypes[16].OneofWrappers = []interface{}{ + (*ContentCredentialsParameters_ModelMetadata_)(nil), + } + file_stability_api_platform_generation_v1_generation_proto_msgTypes[17].OneofWrappers = []interface{}{} + file_stability_api_platform_generation_v1_generation_proto_msgTypes[18].OneofWrappers = []interface{}{} + file_stability_api_platform_generation_v1_generation_proto_msgTypes[19].OneofWrappers = []interface{}{} + file_stability_api_platform_generation_v1_generation_proto_msgTypes[20].OneofWrappers = []interface{}{} + file_stability_api_platform_generation_v1_generation_proto_msgTypes[21].OneofWrappers = []interface{}{} + file_stability_api_platform_generation_v1_generation_proto_msgTypes[22].OneofWrappers = []interface{}{} + file_stability_api_platform_generation_v1_generation_proto_msgTypes[23].OneofWrappers = []interface{}{} + file_stability_api_platform_generation_v1_generation_proto_msgTypes[24].OneofWrappers = []interface{}{} + file_stability_api_platform_generation_v1_generation_proto_msgTypes[26].OneofWrappers = []interface{}{} + file_stability_api_platform_generation_v1_generation_proto_msgTypes[27].OneofWrappers = []interface{}{} + file_stability_api_platform_generation_v1_generation_proto_msgTypes[29].OneofWrappers = []interface{}{ + (*TransformParameters_ColorAdjust)(nil), + (*TransformParameters_DepthCalc)(nil), + (*TransformParameters_Resample)(nil), + (*TransformParameters_CameraPose)(nil), + } + file_stability_api_platform_generation_v1_generation_proto_msgTypes[31].OneofWrappers = []interface{}{} + file_stability_api_platform_generation_v1_generation_proto_msgTypes[32].OneofWrappers = []interface{}{} + file_stability_api_platform_generation_v1_generation_proto_msgTypes[34].OneofWrappers = []interface{}{ + (*Request_Image)(nil), + (*Request_Classifier)(nil), + (*Request_Asset)(nil), + (*Request_Interpolate)(nil), + (*Request_Transform)(nil), + } + file_stability_api_platform_generation_v1_generation_proto_msgTypes[35].OneofWrappers = []interface{}{} + type x struct{} + out := protoimpl.TypeBuilder{ + File: protoimpl.DescBuilder{ + GoPackagePath: reflect.TypeOf(x{}).PkgPath(), + RawDescriptor: file_stability_api_platform_generation_v1_generation_proto_rawDesc, + NumEnums: 21, + NumMessages: 38, + NumExtensions: 0, + NumServices: 1, + }, + GoTypes: file_stability_api_platform_generation_v1_generation_proto_goTypes, + DependencyIndexes: file_stability_api_platform_generation_v1_generation_proto_depIdxs, + EnumInfos: file_stability_api_platform_generation_v1_generation_proto_enumTypes, + MessageInfos: file_stability_api_platform_generation_v1_generation_proto_msgTypes, + }.Build() + File_stability_api_platform_generation_v1_generation_proto = out.File + file_stability_api_platform_generation_v1_generation_proto_rawDesc = nil + file_stability_api_platform_generation_v1_generation_proto_goTypes = nil + file_stability_api_platform_generation_v1_generation_proto_depIdxs = nil +} diff --git a/src/stability_api/platform/generation/v1/generation_connect.d.ts b/src/stability_api/platform/generation/v1/generation_connect.d.ts new file mode 100644 index 0000000..0a24dfb --- /dev/null +++ b/src/stability_api/platform/generation/v1/generation_connect.d.ts @@ -0,0 +1,39 @@ +// @generated by protoc-gen-connect-es v0.12.0 +// @generated from file stability_api/platform/generation/v1/generation.proto (package stabilityai.platformapis.generation.v1, syntax proto3) +/* eslint-disable */ +// @ts-nocheck + +import { Answer, ChainRequest, Request } from "./generation_pb.js"; +import { MethodKind } from "@bufbuild/protobuf"; + +/** + * + * gRPC services + * + * + * @generated from service stabilityai.platformapis.generation.v1.GenerationService + */ +export declare const GenerationService: { + readonly typeName: "stabilityai.platformapis.generation.v1.GenerationService", + readonly methods: { + /** + * @generated from rpc stabilityai.platformapis.generation.v1.GenerationService.Generate + */ + readonly generate: { + readonly name: "Generate", + readonly I: typeof Request, + readonly O: typeof Answer, + readonly kind: MethodKind.ServerStreaming, + }, + /** + * @generated from rpc stabilityai.platformapis.generation.v1.GenerationService.ChainGenerate + */ + readonly chainGenerate: { + readonly name: "ChainGenerate", + readonly I: typeof ChainRequest, + readonly O: typeof Answer, + readonly kind: MethodKind.ServerStreaming, + }, + } +}; + diff --git a/src/stability_api/platform/generation/v1/generation_connect.js b/src/stability_api/platform/generation/v1/generation_connect.js new file mode 100644 index 0000000..df9bc85 --- /dev/null +++ b/src/stability_api/platform/generation/v1/generation_connect.js @@ -0,0 +1,39 @@ +// @generated by protoc-gen-connect-es v0.12.0 +// @generated from file stability_api/platform/generation/v1/generation.proto (package stabilityai.platformapis.generation.v1, syntax proto3) +/* eslint-disable */ +// @ts-nocheck + +import { Answer, ChainRequest, Request } from "./generation_pb.js"; +import { MethodKind } from "@bufbuild/protobuf"; + +/** + * + * gRPC services + * + * + * @generated from service stabilityai.platformapis.generation.v1.GenerationService + */ +export const GenerationService = { + typeName: "stabilityai.platformapis.generation.v1.GenerationService", + methods: { + /** + * @generated from rpc stabilityai.platformapis.generation.v1.GenerationService.Generate + */ + generate: { + name: "Generate", + I: Request, + O: Answer, + kind: MethodKind.ServerStreaming, + }, + /** + * @generated from rpc stabilityai.platformapis.generation.v1.GenerationService.ChainGenerate + */ + chainGenerate: { + name: "ChainGenerate", + I: ChainRequest, + O: Answer, + kind: MethodKind.ServerStreaming, + }, + } +}; + diff --git a/src/stability_api/platform/generation/v1/generation_grpc.pb.go b/src/stability_api/platform/generation/v1/generation_grpc.pb.go new file mode 100644 index 0000000..1537188 --- /dev/null +++ b/src/stability_api/platform/generation/v1/generation_grpc.pb.go @@ -0,0 +1,200 @@ +// Code generated by protoc-gen-go-grpc. DO NOT EDIT. +// versions: +// - protoc-gen-go-grpc v1.3.0 +// - protoc (unknown) +// source: stability_api/platform/generation/v1/generation.proto + +package generationv1 + +import ( + context "context" + grpc "google.golang.org/grpc" + codes "google.golang.org/grpc/codes" + status "google.golang.org/grpc/status" +) + +// This is a compile-time assertion to ensure that this generated file +// is compatible with the grpc package it is being compiled against. +// Requires gRPC-Go v1.32.0 or later. +const _ = grpc.SupportPackageIsVersion7 + +const ( + GenerationService_Generate_FullMethodName = "/stabilityai.platformapis.generation.v1.GenerationService/Generate" + GenerationService_ChainGenerate_FullMethodName = "/stabilityai.platformapis.generation.v1.GenerationService/ChainGenerate" +) + +// GenerationServiceClient is the client API for GenerationService service. +// +// For semantics around ctx use and closing/ending streaming RPCs, please refer to https://pkg.go.dev/google.golang.org/grpc/?tab=doc#ClientConn.NewStream. +type GenerationServiceClient interface { + Generate(ctx context.Context, in *Request, opts ...grpc.CallOption) (GenerationService_GenerateClient, error) + ChainGenerate(ctx context.Context, in *ChainRequest, opts ...grpc.CallOption) (GenerationService_ChainGenerateClient, error) +} + +type generationServiceClient struct { + cc grpc.ClientConnInterface +} + +func NewGenerationServiceClient(cc grpc.ClientConnInterface) GenerationServiceClient { + return &generationServiceClient{cc} +} + +func (c *generationServiceClient) Generate(ctx context.Context, in *Request, opts ...grpc.CallOption) (GenerationService_GenerateClient, error) { + stream, err := c.cc.NewStream(ctx, &GenerationService_ServiceDesc.Streams[0], GenerationService_Generate_FullMethodName, opts...) + if err != nil { + return nil, err + } + x := &generationServiceGenerateClient{stream} + if err := x.ClientStream.SendMsg(in); err != nil { + return nil, err + } + if err := x.ClientStream.CloseSend(); err != nil { + return nil, err + } + return x, nil +} + +type GenerationService_GenerateClient interface { + Recv() (*Answer, error) + grpc.ClientStream +} + +type generationServiceGenerateClient struct { + grpc.ClientStream +} + +func (x *generationServiceGenerateClient) Recv() (*Answer, error) { + m := new(Answer) + if err := x.ClientStream.RecvMsg(m); err != nil { + return nil, err + } + return m, nil +} + +func (c *generationServiceClient) ChainGenerate(ctx context.Context, in *ChainRequest, opts ...grpc.CallOption) (GenerationService_ChainGenerateClient, error) { + stream, err := c.cc.NewStream(ctx, &GenerationService_ServiceDesc.Streams[1], GenerationService_ChainGenerate_FullMethodName, opts...) + if err != nil { + return nil, err + } + x := &generationServiceChainGenerateClient{stream} + if err := x.ClientStream.SendMsg(in); err != nil { + return nil, err + } + if err := x.ClientStream.CloseSend(); err != nil { + return nil, err + } + return x, nil +} + +type GenerationService_ChainGenerateClient interface { + Recv() (*Answer, error) + grpc.ClientStream +} + +type generationServiceChainGenerateClient struct { + grpc.ClientStream +} + +func (x *generationServiceChainGenerateClient) Recv() (*Answer, error) { + m := new(Answer) + if err := x.ClientStream.RecvMsg(m); err != nil { + return nil, err + } + return m, nil +} + +// GenerationServiceServer is the server API for GenerationService service. +// All implementations must embed UnimplementedGenerationServiceServer +// for forward compatibility +type GenerationServiceServer interface { + Generate(*Request, GenerationService_GenerateServer) error + ChainGenerate(*ChainRequest, GenerationService_ChainGenerateServer) error + mustEmbedUnimplementedGenerationServiceServer() +} + +// UnimplementedGenerationServiceServer must be embedded to have forward compatible implementations. +type UnimplementedGenerationServiceServer struct { +} + +func (UnimplementedGenerationServiceServer) Generate(*Request, GenerationService_GenerateServer) error { + return status.Errorf(codes.Unimplemented, "method Generate not implemented") +} +func (UnimplementedGenerationServiceServer) ChainGenerate(*ChainRequest, GenerationService_ChainGenerateServer) error { + return status.Errorf(codes.Unimplemented, "method ChainGenerate not implemented") +} +func (UnimplementedGenerationServiceServer) mustEmbedUnimplementedGenerationServiceServer() {} + +// UnsafeGenerationServiceServer may be embedded to opt out of forward compatibility for this service. +// Use of this interface is not recommended, as added methods to GenerationServiceServer will +// result in compilation errors. +type UnsafeGenerationServiceServer interface { + mustEmbedUnimplementedGenerationServiceServer() +} + +func RegisterGenerationServiceServer(s grpc.ServiceRegistrar, srv GenerationServiceServer) { + s.RegisterService(&GenerationService_ServiceDesc, srv) +} + +func _GenerationService_Generate_Handler(srv interface{}, stream grpc.ServerStream) error { + m := new(Request) + if err := stream.RecvMsg(m); err != nil { + return err + } + return srv.(GenerationServiceServer).Generate(m, &generationServiceGenerateServer{stream}) +} + +type GenerationService_GenerateServer interface { + Send(*Answer) error + grpc.ServerStream +} + +type generationServiceGenerateServer struct { + grpc.ServerStream +} + +func (x *generationServiceGenerateServer) Send(m *Answer) error { + return x.ServerStream.SendMsg(m) +} + +func _GenerationService_ChainGenerate_Handler(srv interface{}, stream grpc.ServerStream) error { + m := new(ChainRequest) + if err := stream.RecvMsg(m); err != nil { + return err + } + return srv.(GenerationServiceServer).ChainGenerate(m, &generationServiceChainGenerateServer{stream}) +} + +type GenerationService_ChainGenerateServer interface { + Send(*Answer) error + grpc.ServerStream +} + +type generationServiceChainGenerateServer struct { + grpc.ServerStream +} + +func (x *generationServiceChainGenerateServer) Send(m *Answer) error { + return x.ServerStream.SendMsg(m) +} + +// GenerationService_ServiceDesc is the grpc.ServiceDesc for GenerationService service. +// It's only intended for direct use with grpc.RegisterService, +// and not to be introspected or modified (even as a copy) +var GenerationService_ServiceDesc = grpc.ServiceDesc{ + ServiceName: "stabilityai.platformapis.generation.v1.GenerationService", + HandlerType: (*GenerationServiceServer)(nil), + Methods: []grpc.MethodDesc{}, + Streams: []grpc.StreamDesc{ + { + StreamName: "Generate", + Handler: _GenerationService_Generate_Handler, + ServerStreams: true, + }, + { + StreamName: "ChainGenerate", + Handler: _GenerationService_ChainGenerate_Handler, + ServerStreams: true, + }, + }, + Metadata: "stability_api/platform/generation/v1/generation.proto", +} diff --git a/src/stability_api/platform/generation/v1/generation_pb.d.ts b/src/stability_api/platform/generation/v1/generation_pb.d.ts new file mode 100644 index 0000000..9e03b82 --- /dev/null +++ b/src/stability_api/platform/generation/v1/generation_pb.d.ts @@ -0,0 +1,2357 @@ +// @generated by protoc-gen-es v1.3.0 +// @generated from file stability_api/platform/generation/v1/generation.proto (package stabilityai.platformapis.generation.v1, syntax proto3) +/* eslint-disable */ +// @ts-nocheck + +import type { BinaryReadOptions, FieldList, JsonReadOptions, JsonValue, PartialMessage, PlainMessage, Struct } from "@bufbuild/protobuf"; +import { Message, proto3 } from "@bufbuild/protobuf"; +import type { Tensor } from "../../../tensors/tensors_pb.js"; + +/** + * @generated from enum stabilityai.platformapis.generation.v1.FinishReason + */ +export declare enum FinishReason { + /** + * @generated from enum value: NULL = 0; + */ + NULL = 0, + + /** + * @generated from enum value: LENGTH = 1; + */ + LENGTH = 1, + + /** + * @generated from enum value: STOP = 2; + */ + STOP = 2, + + /** + * @generated from enum value: ERROR = 3; + */ + ERROR = 3, + + /** + * @generated from enum value: FILTER = 4; + */ + FILTER = 4, +} + +/** + * @generated from enum stabilityai.platformapis.generation.v1.ArtifactType + */ +export declare enum ArtifactType { + /** + * @generated from enum value: ARTIFACT_NONE = 0; + */ + ARTIFACT_NONE = 0, + + /** + * @generated from enum value: ARTIFACT_IMAGE = 1; + */ + ARTIFACT_IMAGE = 1, + + /** + * @generated from enum value: ARTIFACT_VIDEO = 2; + */ + ARTIFACT_VIDEO = 2, + + /** + * @generated from enum value: ARTIFACT_TEXT = 3; + */ + ARTIFACT_TEXT = 3, + + /** + * @generated from enum value: ARTIFACT_TOKENS = 4; + */ + ARTIFACT_TOKENS = 4, + + /** + * @generated from enum value: ARTIFACT_EMBEDDING = 5; + */ + ARTIFACT_EMBEDDING = 5, + + /** + * @generated from enum value: ARTIFACT_CLASSIFICATIONS = 6; + */ + ARTIFACT_CLASSIFICATIONS = 6, + + /** + * @generated from enum value: ARTIFACT_MASK = 7; + */ + ARTIFACT_MASK = 7, + + /** + * @generated from enum value: ARTIFACT_LATENT = 8; + */ + ARTIFACT_LATENT = 8, + + /** + * @generated from enum value: ARTIFACT_TENSOR = 9; + */ + ARTIFACT_TENSOR = 9, + + /** + * @generated from enum value: ARTIFACT_DEPTH = 10; + */ + ARTIFACT_DEPTH = 10, +} + +/** + * @generated from enum stabilityai.platformapis.generation.v1.MaskedAreaInit + */ +export declare enum MaskedAreaInit { + /** + * @generated from enum value: MASKED_AREA_INIT_ZERO = 0; + */ + ZERO = 0, + + /** + * @generated from enum value: MASKED_AREA_INIT_RANDOM = 1; + */ + RANDOM = 1, + + /** + * @generated from enum value: MASKED_AREA_INIT_ORIGINAL = 2; + */ + ORIGINAL = 2, +} + +/** + * @generated from enum stabilityai.platformapis.generation.v1.WeightMethod + */ +export declare enum WeightMethod { + /** + * @generated from enum value: TEXT_ENCODER = 0; + */ + TEXT_ENCODER = 0, + + /** + * @generated from enum value: CROSS_ATTENTION = 1; + */ + CROSS_ATTENTION = 1, +} + +/** + * DiffusionSampler identifies which sampler to use for Diffusion, and represents + * the internal set of supported samplers. + * + * @generated from enum stabilityai.platformapis.generation.v1.DiffusionSampler + */ +export declare enum DiffusionSampler { + /** + * @generated from enum value: SAMPLER_DDIM = 0; + */ + SAMPLER_DDIM = 0, + + /** + * @generated from enum value: SAMPLER_DDPM = 1; + */ + SAMPLER_DDPM = 1, + + /** + * @generated from enum value: SAMPLER_K_EULER = 2; + */ + SAMPLER_K_EULER = 2, + + /** + * @generated from enum value: SAMPLER_K_EULER_ANCESTRAL = 3; + */ + SAMPLER_K_EULER_ANCESTRAL = 3, + + /** + * @generated from enum value: SAMPLER_K_HEUN = 4; + */ + SAMPLER_K_HEUN = 4, + + /** + * @generated from enum value: SAMPLER_K_DPM_2 = 5; + */ + SAMPLER_K_DPM_2 = 5, + + /** + * @generated from enum value: SAMPLER_K_DPM_2_ANCESTRAL = 6; + */ + SAMPLER_K_DPM_2_ANCESTRAL = 6, + + /** + * @generated from enum value: SAMPLER_K_LMS = 7; + */ + SAMPLER_K_LMS = 7, + + /** + * @generated from enum value: SAMPLER_K_DPMPP_2S_ANCESTRAL = 8; + */ + SAMPLER_K_DPMPP_2S_ANCESTRAL = 8, + + /** + * @generated from enum value: SAMPLER_K_DPMPP_2M = 9; + */ + SAMPLER_K_DPMPP_2M = 9, + + /** + * @generated from enum value: SAMPLER_K_DPMPP_SDE = 10; + */ + SAMPLER_K_DPMPP_SDE = 10, +} + +/** + * Future, unimplemented. + * + * @generated from enum stabilityai.platformapis.generation.v1.Upscaler + */ +export declare enum Upscaler { + /** + * @generated from enum value: UPSCALER_RGB = 0; + */ + RGB = 0, + + /** + * @generated from enum value: UPSCALER_GFPGAN = 1; + */ + GFPGAN = 1, + + /** + * @generated from enum value: UPSCALER_ESRGAN = 2; + */ + ESRGAN = 2, +} + +/** + * Presets for CLIP guidance. + * + * @generated from enum stabilityai.platformapis.generation.v1.GuidancePreset + */ +export declare enum GuidancePreset { + /** + * @generated from enum value: GUIDANCE_PRESET_NONE = 0; + */ + NONE = 0, + + /** + * @generated from enum value: GUIDANCE_PRESET_SIMPLE = 1; + */ + SIMPLE = 1, + + /** + * @generated from enum value: GUIDANCE_PRESET_FAST_BLUE = 2; + */ + FAST_BLUE = 2, + + /** + * @generated from enum value: GUIDANCE_PRESET_FAST_GREEN = 3; + */ + FAST_GREEN = 3, + + /** + * @generated from enum value: GUIDANCE_PRESET_SLOW = 4; + */ + SLOW = 4, + + /** + * @generated from enum value: GUIDANCE_PRESET_SLOWER = 5; + */ + SLOWER = 5, + + /** + * @generated from enum value: GUIDANCE_PRESET_SLOWEST = 6; + */ + SLOWEST = 6, +} + +/** + * @generated from enum stabilityai.platformapis.generation.v1.ModelArchitecture + */ +export declare enum ModelArchitecture { + /** + * @generated from enum value: MODEL_ARCHITECTURE_NONE = 0; + */ + NONE = 0, + + /** + * @generated from enum value: MODEL_ARCHITECTURE_CLIP_VIT = 1; + */ + CLIP_VIT = 1, + + /** + * @generated from enum value: MODEL_ARCHITECTURE_CLIP_RESNET = 2; + */ + CLIP_RESNET = 2, + + /** + * @generated from enum value: MODEL_ARCHITECTURE_LDM = 3; + */ + LDM = 3, +} + +/** + * @generated from enum stabilityai.platformapis.generation.v1.T2IAdapter + */ +export declare enum T2IAdapter { + /** + * @generated from enum value: T2IADAPTER_NONE = 0; + */ + T2IADAPTER_NONE = 0, + + /** + * these are all compatible with SDXL. + * + * @generated from enum value: T2IADAPTER_SKETCH = 1; + */ + T2IADAPTER_SKETCH = 1, + + /** + * @generated from enum value: T2IADAPTER_DEPTH = 2; + */ + T2IADAPTER_DEPTH = 2, + + /** + * @generated from enum value: T2IADAPTER_CANNY = 3; + */ + T2IADAPTER_CANNY = 3, +} + +/** + * If adapter_type is not None, then the user can choose what type of init_image to pass in: either an arbitrary image + * which will then be converted to a depth map, sketch, or canny edge for the sketch, depth and canny adapters respectively, + * or they can pass in their own depth map, sketch or canny edge. This field controls whether the init_image should + * be interpreted as an arbitrary image to be preprocessed ready for the t2i adapter, or whether it has already been + * preprocessed elsewhere + * + * @generated from enum stabilityai.platformapis.generation.v1.T2IAdapterInit + */ +export declare enum T2IAdapterInit { + /** + * these are all compatible with SDXL. + * + * @generated from enum value: T2IADAPTERINIT_IMAGE = 0; + */ + T2IADAPTERINIT_IMAGE = 0, + + /** + * @generated from enum value: T2IADAPTERINIT_ADAPTER_IMAGE = 1; + */ + T2IADAPTERINIT_ADAPTER_IMAGE = 1, +} + +/** + * @generated from enum stabilityai.platformapis.generation.v1.Action + */ +export declare enum Action { + /** + * @generated from enum value: ACTION_PASSTHROUGH = 0; + */ + PASSTHROUGH = 0, + + /** + * @generated from enum value: ACTION_REGENERATE_DUPLICATE = 1; + */ + REGENERATE_DUPLICATE = 1, + + /** + * @generated from enum value: ACTION_REGENERATE = 2; + */ + REGENERATE = 2, + + /** + * @generated from enum value: ACTION_OBFUSCATE_DUPLICATE = 3; + */ + OBFUSCATE_DUPLICATE = 3, + + /** + * @generated from enum value: ACTION_OBFUSCATE = 4; + */ + OBFUSCATE = 4, + + /** + * @generated from enum value: ACTION_DISCARD = 5; + */ + DISCARD = 5, +} + +/** + * @generated from enum stabilityai.platformapis.generation.v1.ClassifierMode + */ +export declare enum ClassifierMode { + /** + * @generated from enum value: CLSFR_MODE_ZEROSHOT = 0; + */ + CLSFR_MODE_ZEROSHOT = 0, + + /** + * CLSFR_MODE_ODDSRATIO = 2; + * + * @generated from enum value: CLSFR_MODE_MULTICLASS = 1; + */ + CLSFR_MODE_MULTICLASS = 1, +} + +/** + * @generated from enum stabilityai.platformapis.generation.v1.InterpolateMode + */ +export declare enum InterpolateMode { + /** + * @generated from enum value: INTERPOLATE_LINEAR = 0; + */ + INTERPOLATE_LINEAR = 0, + + /** + * @generated from enum value: INTERPOLATE_RIFE = 1; + */ + INTERPOLATE_RIFE = 1, + + /** + * @generated from enum value: INTERPOLATE_VAE_LINEAR = 2; + */ + INTERPOLATE_VAE_LINEAR = 2, + + /** + * @generated from enum value: INTERPOLATE_VAE_SLERP = 3; + */ + INTERPOLATE_VAE_SLERP = 3, + + /** + * @generated from enum value: INTERPOLATE_FILM = 4; + */ + INTERPOLATE_FILM = 4, +} + +/** + * @generated from enum stabilityai.platformapis.generation.v1.BorderMode + */ +export declare enum BorderMode { + /** + * reflect image values across the border + * + * @generated from enum value: BORDER_REFLECT = 0; + */ + BORDER_REFLECT = 0, + + /** + * replicate border values outside the image + * + * @generated from enum value: BORDER_REPLICATE = 1; + */ + BORDER_REPLICATE = 1, + + /** + * wrap around / tile the image values + * + * @generated from enum value: BORDER_WRAP = 2; + */ + BORDER_WRAP = 2, + + /** + * use 0 for locations outside the image + * + * @generated from enum value: BORDER_ZERO = 3; + */ + BORDER_ZERO = 3, + + /** + * prefill border areas with values matching the colors around the area + * + * @generated from enum value: BORDER_PREFILL = 4; + */ + BORDER_PREFILL = 4, +} + +/** + * @generated from enum stabilityai.platformapis.generation.v1.ColorMatchMode + */ +export declare enum ColorMatchMode { + /** + * match hue, saturation, and value histograms + * + * @generated from enum value: COLOR_MATCH_HSV = 0; + */ + COLOR_MATCH_HSV = 0, + + /** + * match lightness, a, and b histograms + * + * @generated from enum value: COLOR_MATCH_LAB = 1; + */ + COLOR_MATCH_LAB = 1, + + /** + * match red, green, and blue histograms + * + * @generated from enum value: COLOR_MATCH_RGB = 2; + */ + COLOR_MATCH_RGB = 2, +} + +/** + * @generated from enum stabilityai.platformapis.generation.v1.CameraType + */ +export declare enum CameraType { + /** + * Perspective camera + * + * @generated from enum value: CAMERA_PERSPECTIVE = 0; + */ + CAMERA_PERSPECTIVE = 0, + + /** + * Orthographic camera. Well suited for isometric animations + * + * @generated from enum value: CAMERA_ORTHOGRAPHIC = 1; + */ + CAMERA_ORTHOGRAPHIC = 1, +} + +/** + * @generated from enum stabilityai.platformapis.generation.v1.RenderMode + */ +export declare enum RenderMode { + /** + * @generated from enum value: RENDER_MESH = 0; + */ + RENDER_MESH = 0, + + /** + * @generated from enum value: RENDER_POINTCLOUD = 1; + */ + RENDER_POINTCLOUD = 1, +} + +/** + * @generated from enum stabilityai.platformapis.generation.v1.AssetAction + */ +export declare enum AssetAction { + /** + * @generated from enum value: ASSET_PUT = 0; + */ + ASSET_PUT = 0, + + /** + * @generated from enum value: ASSET_GET = 1; + */ + ASSET_GET = 1, + + /** + * @generated from enum value: ASSET_DELETE = 2; + */ + ASSET_DELETE = 2, +} + +/** + * AssetUse defines how the asset is used within a project. This enum matches + * the values the project proto. + * + * @generated from enum stabilityai.platformapis.generation.v1.AssetUse + */ +export declare enum AssetUse { + /** + * Asset does not have use defined + * + * @generated from enum value: ASSET_USE_UNDEFINED = 0; + */ + UNDEFINED = 0, + + /** + * Asset is used as an input for the project + * + * @generated from enum value: ASSET_USE_INPUT = 1; + */ + INPUT = 1, + + /** + * Asset is an output from the project + * + * @generated from enum value: ASSET_USE_OUTPUT = 2; + */ + OUTPUT = 2, + + /** + * Asset is an output from an intermediate step of the project + * + * @generated from enum value: ASSET_USE_INTERMEDIATE = 3; + */ + INTERMEDIATE = 3, + + /** + * Asset is used as the project file for the project + * + * @generated from enum value: ASSET_USE_PROJECT = 4; + */ + PROJECT = 4, +} + +/** + * @generated from enum stabilityai.platformapis.generation.v1.StageAction + */ +export declare enum StageAction { + /** + * @generated from enum value: STAGE_ACTION_PASS = 0; + */ + PASS = 0, + + /** + * @generated from enum value: STAGE_ACTION_DISCARD = 1; + */ + DISCARD = 1, + + /** + * @generated from enum value: STAGE_ACTION_RETURN = 2; + */ + RETURN = 2, +} + +/** + * Generally, a GPT BPE 16-bit token, paired with an optional string representation. + * + * @generated from message stabilityai.platformapis.generation.v1.Token + */ +export declare class Token extends Message { + /** + * @generated from field: optional string text = 1; + */ + text?: string; + + /** + * @generated from field: uint32 id = 2; + */ + id: number; + + constructor(data?: PartialMessage); + + static readonly runtime: typeof proto3; + static readonly typeName = "stabilityai.platformapis.generation.v1.Token"; + static readonly fields: FieldList; + + static fromBinary(bytes: Uint8Array, options?: Partial): Token; + + static fromJson(jsonValue: JsonValue, options?: Partial): Token; + + static fromJsonString(jsonString: string, options?: Partial): Token; + + static equals(a: Token | PlainMessage | undefined, b: Token | PlainMessage | undefined): boolean; +} + +/** + * Sequence of tokens, paired with the id of the tokenizer used to generate them. + * + * @generated from message stabilityai.platformapis.generation.v1.Tokens + */ +export declare class Tokens extends Message { + /** + * @generated from field: repeated stabilityai.platformapis.generation.v1.Token tokens = 1; + */ + tokens: Token[]; + + /** + * @generated from field: optional string tokenizer_id = 2; + */ + tokenizerId?: string; + + constructor(data?: PartialMessage); + + static readonly runtime: typeof proto3; + static readonly typeName = "stabilityai.platformapis.generation.v1.Tokens"; + static readonly fields: FieldList; + + static fromBinary(bytes: Uint8Array, options?: Partial): Tokens; + + static fromJson(jsonValue: JsonValue, options?: Partial): Tokens; + + static fromJsonString(jsonString: string, options?: Partial): Tokens; + + static equals(a: Tokens | PlainMessage | undefined, b: Tokens | PlainMessage | undefined): boolean; +} + +/** + * A tangible Artifact, such as an image, video, or text that is used for input + * or output. + * + * @generated from message stabilityai.platformapis.generation.v1.Artifact + */ +export declare class Artifact extends Message { + /** + * @generated from field: uint64 id = 1; + */ + id: bigint; + + /** + * @generated from field: stabilityai.platformapis.generation.v1.ArtifactType type = 2; + */ + type: ArtifactType; + + /** + * MIME type identifier, e.g. "image/png" + * + * @generated from field: string mime = 3; + */ + mime: string; + + /** + * Magic number, e.g. "PNG" + * + * @generated from field: optional string magic = 4; + */ + magic?: string; + + /** + * @generated from oneof stabilityai.platformapis.generation.v1.Artifact.data + */ + data: { + /** + * Binary data, e.g. PNG image + * + * @generated from field: bytes binary = 5; + */ + value: Uint8Array; + case: "binary"; + } | { + /** + * Text data, e.g. text prompt + * + * @generated from field: string text = 6; + */ + value: string; + case: "text"; + } | { + /** + * Tokenized text data, e.g. GPT tokens + * + * @generated from field: stabilityai.platformapis.generation.v1.Tokens tokens = 7; + */ + value: Tokens; + case: "tokens"; + } | { + /** + * @generated from field: stabilityai.platformapis.generation.v1.ClassifierParameters classifier = 11; + */ + value: ClassifierParameters; + case: "classifier"; + } | { + /** + * torch.Tensor: + * + * @generated from field: tensors.Tensor tensor = 14; + */ + value: Tensor; + case: "tensor"; + } | { case: undefined; value?: undefined }; + + /** + * Index of this artifact in input/output list + * + * @generated from field: uint32 index = 8; + */ + index: number; + + /** + * Reason for finishing, if applicable + * + * @generated from field: stabilityai.platformapis.generation.v1.FinishReason finish_reason = 9; + */ + finishReason: FinishReason; + + /** + * Seed used to generate this artifact + * + * @generated from field: uint32 seed = 10; + */ + seed: number; + + /** + * UUIDv4 of the artifact, used for asset lookup + * + * @generated from field: string uuid = 12; + */ + uuid: string; + + /** + * Size of the artifact in bytes + * + * @generated from field: uint64 size = 13; + */ + size: bigint; + + constructor(data?: PartialMessage); + + static readonly runtime: typeof proto3; + static readonly typeName = "stabilityai.platformapis.generation.v1.Artifact"; + static readonly fields: FieldList; + + static fromBinary(bytes: Uint8Array, options?: Partial): Artifact; + + static fromJson(jsonValue: JsonValue, options?: Partial): Artifact; + + static fromJsonString(jsonString: string, options?: Partial): Artifact; + + static equals(a: Artifact | PlainMessage | undefined, b: Artifact | PlainMessage | undefined): boolean; +} + +/** + * A set of parameters for each individual Prompt. + * + * @generated from message stabilityai.platformapis.generation.v1.PromptParameters + */ +export declare class PromptParameters extends Message { + /** + * deprecated, no longer used + * + * @generated from field: optional bool init = 1; + */ + init?: boolean; + + /** + * @generated from field: optional float weight = 2; + */ + weight?: number; + + constructor(data?: PartialMessage); + + static readonly runtime: typeof proto3; + static readonly typeName = "stabilityai.platformapis.generation.v1.PromptParameters"; + static readonly fields: FieldList; + + static fromBinary(bytes: Uint8Array, options?: Partial): PromptParameters; + + static fromJson(jsonValue: JsonValue, options?: Partial): PromptParameters; + + static fromJsonString(jsonString: string, options?: Partial): PromptParameters; + + static equals(a: PromptParameters | PlainMessage | undefined, b: PromptParameters | PlainMessage | undefined): boolean; +} + +/** + * A Prompt is a special type of Artifact that is used to generate an output. + * There can be multiple Prompts that affect the same output. Currently, the + * only Prompts supported are: + * - Text (singular) + * - Init Image (singular, optional, type ARTIFACT_IMAGE) + * - Mask (singular, optional, type ARTIFACT_MASK) + * - Depth (singular, optional, type ARTIFACT_DEPTH) + * + * @generated from message stabilityai.platformapis.generation.v1.Prompt + */ +export declare class Prompt extends Message { + /** + * @generated from field: optional stabilityai.platformapis.generation.v1.PromptParameters parameters = 1; + */ + parameters?: PromptParameters; + + /** + * @generated from oneof stabilityai.platformapis.generation.v1.Prompt.prompt + */ + prompt: { + /** + * @generated from field: string text = 2; + */ + value: string; + case: "text"; + } | { + /** + * @generated from field: stabilityai.platformapis.generation.v1.Tokens tokens = 3; + */ + value: Tokens; + case: "tokens"; + } | { + /** + * @generated from field: stabilityai.platformapis.generation.v1.Artifact artifact = 4; + */ + value: Artifact; + case: "artifact"; + } | { case: undefined; value?: undefined }; + + constructor(data?: PartialMessage); + + static readonly runtime: typeof proto3; + static readonly typeName = "stabilityai.platformapis.generation.v1.Prompt"; + static readonly fields: FieldList; + + static fromBinary(bytes: Uint8Array, options?: Partial): Prompt; + + static fromJson(jsonValue: JsonValue, options?: Partial): Prompt; + + static fromJsonString(jsonString: string, options?: Partial): Prompt; + + static equals(a: Prompt | PlainMessage | undefined, b: Prompt | PlainMessage | undefined): boolean; +} + +/** + * Parameters that affect the behavior of the sampler, typically used for CFG. + * + * @generated from message stabilityai.platformapis.generation.v1.SamplerParameters + */ +export declare class SamplerParameters extends Message { + /** + * @generated from field: optional float eta = 1; + */ + eta?: number; + + /** + * @generated from field: optional uint64 sampling_steps = 2; + */ + samplingSteps?: bigint; + + /** + * @generated from field: optional uint64 latent_channels = 3; + */ + latentChannels?: bigint; + + /** + * @generated from field: optional uint64 downsampling_factor = 4; + */ + downsamplingFactor?: bigint; + + /** + * @generated from field: optional float cfg_scale = 5; + */ + cfgScale?: number; + + /** + * defaults to 0.99 + * + * @generated from field: optional float init_noise_scale = 6; + */ + initNoiseScale?: number; + + /** + * defaults to 0.99 + * + * @generated from field: optional float step_noise_scale = 7; + */ + stepNoiseScale?: number; + + constructor(data?: PartialMessage); + + static readonly runtime: typeof proto3; + static readonly typeName = "stabilityai.platformapis.generation.v1.SamplerParameters"; + static readonly fields: FieldList; + + static fromBinary(bytes: Uint8Array, options?: Partial): SamplerParameters; + + static fromJson(jsonValue: JsonValue, options?: Partial): SamplerParameters; + + static fromJsonString(jsonString: string, options?: Partial): SamplerParameters; + + static equals(a: SamplerParameters | PlainMessage | undefined, b: SamplerParameters | PlainMessage | undefined): boolean; +} + +/** + * Unused, but reserved for future use. Adjustments to the latents after + * initialization. + * + * @generated from message stabilityai.platformapis.generation.v1.ConditionerParameters + */ +export declare class ConditionerParameters extends Message { + /** + * @generated from field: optional string vector_adjust_prior = 1; + */ + vectorAdjustPrior?: string; + + /** + * @generated from field: optional stabilityai.platformapis.generation.v1.Model conditioner = 2; + */ + conditioner?: Model; + + constructor(data?: PartialMessage); + + static readonly runtime: typeof proto3; + static readonly typeName = "stabilityai.platformapis.generation.v1.ConditionerParameters"; + static readonly fields: FieldList; + + static fromBinary(bytes: Uint8Array, options?: Partial): ConditionerParameters; + + static fromJson(jsonValue: JsonValue, options?: Partial): ConditionerParameters; + + static fromJsonString(jsonString: string, options?: Partial): ConditionerParameters; + + static equals(a: ConditionerParameters | PlainMessage | undefined, b: ConditionerParameters | PlainMessage | undefined): boolean; +} + +/** + * When does this schedule definition apply? + * + * @generated from message stabilityai.platformapis.generation.v1.ScheduleParameters + */ +export declare class ScheduleParameters extends Message { + /** + * 0.0 to 1.0 + * + * @generated from field: optional float start = 1; + */ + start?: number; + + /** + * 0.0 to 1.0 + * + * @generated from field: optional float end = 2; + */ + end?: number; + + /** + * float value to apply on this schedule + * + * @generated from field: optional float value = 3; + */ + value?: number; + + constructor(data?: PartialMessage); + + static readonly runtime: typeof proto3; + static readonly typeName = "stabilityai.platformapis.generation.v1.ScheduleParameters"; + static readonly fields: FieldList; + + static fromBinary(bytes: Uint8Array, options?: Partial): ScheduleParameters; + + static fromJson(jsonValue: JsonValue, options?: Partial): ScheduleParameters; + + static fromJsonString(jsonString: string, options?: Partial): ScheduleParameters; + + static equals(a: ScheduleParameters | PlainMessage | undefined, b: ScheduleParameters | PlainMessage | undefined): boolean; +} + +/** + * Parameters that apply to this block of the schedule. + * + * @generated from message stabilityai.platformapis.generation.v1.StepParameter + */ +export declare class StepParameter extends Message { + /** + * @generated from field: float scaled_step = 1; + */ + scaledStep: number; + + /** + * @generated from field: optional stabilityai.platformapis.generation.v1.SamplerParameters sampler = 2; + */ + sampler?: SamplerParameters; + + /** + * @generated from field: optional stabilityai.platformapis.generation.v1.ScheduleParameters schedule = 3; + */ + schedule?: ScheduleParameters; + + /** + * @generated from field: optional stabilityai.platformapis.generation.v1.GuidanceParameters guidance = 4; + */ + guidance?: GuidanceParameters; + + constructor(data?: PartialMessage); + + static readonly runtime: typeof proto3; + static readonly typeName = "stabilityai.platformapis.generation.v1.StepParameter"; + static readonly fields: FieldList; + + static fromBinary(bytes: Uint8Array, options?: Partial): StepParameter; + + static fromJson(jsonValue: JsonValue, options?: Partial): StepParameter; + + static fromJsonString(jsonString: string, options?: Partial): StepParameter; + + static equals(a: StepParameter | PlainMessage | undefined, b: StepParameter | PlainMessage | undefined): boolean; +} + +/** + * @generated from message stabilityai.platformapis.generation.v1.Model + */ +export declare class Model extends Message { + /** + * @generated from field: stabilityai.platformapis.generation.v1.ModelArchitecture architecture = 1; + */ + architecture: ModelArchitecture; + + /** + * @generated from field: string publisher = 2; + */ + publisher: string; + + /** + * @generated from field: string dataset = 3; + */ + dataset: string; + + /** + * @generated from field: float version = 4; + */ + version: number; + + /** + * @generated from field: string semantic_version = 5; + */ + semanticVersion: string; + + /** + * @generated from field: string alias = 6; + */ + alias: string; + + constructor(data?: PartialMessage); + + static readonly runtime: typeof proto3; + static readonly typeName = "stabilityai.platformapis.generation.v1.Model"; + static readonly fields: FieldList; + + static fromBinary(bytes: Uint8Array, options?: Partial): Model; + + static fromJson(jsonValue: JsonValue, options?: Partial): Model; + + static fromJsonString(jsonString: string, options?: Partial): Model; + + static equals(a: Model | PlainMessage | undefined, b: Model | PlainMessage | undefined): boolean; +} + +/** + * @generated from message stabilityai.platformapis.generation.v1.CutoutParameters + */ +export declare class CutoutParameters extends Message { + /** + * Nested cutouts, unsupported + * + * @generated from field: repeated stabilityai.platformapis.generation.v1.CutoutParameters cutouts = 1; + */ + cutouts: CutoutParameters[]; + + /** + * 0 to n, usually 8 to 32, 0 inner + * + * @generated from field: optional uint32 count = 2; + */ + count?: number; + + /** + * 0.0 to 1.0, defaults to 0.2 + * + * @generated from field: optional float gray = 3; + */ + gray?: number; + + /** + * percentage of cutouts to blur + * + * @generated from field: optional float blur = 4; + */ + blur?: number; + + /** + * defaults to inner: 0.5, outer: 0.0 + * + * @generated from field: optional float size_power = 5; + */ + sizePower?: number; + + constructor(data?: PartialMessage); + + static readonly runtime: typeof proto3; + static readonly typeName = "stabilityai.platformapis.generation.v1.CutoutParameters"; + static readonly fields: FieldList; + + static fromBinary(bytes: Uint8Array, options?: Partial): CutoutParameters; + + static fromJson(jsonValue: JsonValue, options?: Partial): CutoutParameters; + + static fromJsonString(jsonString: string, options?: Partial): CutoutParameters; + + static equals(a: CutoutParameters | PlainMessage | undefined, b: CutoutParameters | PlainMessage | undefined): boolean; +} + +/** + * GuidanceScheduleParameters are used to define a schedule for CLIP guidance, and + * are used to define the behavior of the guidance over time. They are relative + * to the total number of steps, and are scaled to the number of steps in the + * current run. + * + * @generated from message stabilityai.platformapis.generation.v1.GuidanceScheduleParameters + */ +export declare class GuidanceScheduleParameters extends Message { + /** + * @generated from field: float duration = 1; + */ + duration: number; + + /** + * @generated from field: float value = 2; + */ + value: number; + + constructor(data?: PartialMessage); + + static readonly runtime: typeof proto3; + static readonly typeName = "stabilityai.platformapis.generation.v1.GuidanceScheduleParameters"; + static readonly fields: FieldList; + + static fromBinary(bytes: Uint8Array, options?: Partial): GuidanceScheduleParameters; + + static fromJson(jsonValue: JsonValue, options?: Partial): GuidanceScheduleParameters; + + static fromJsonString(jsonString: string, options?: Partial): GuidanceScheduleParameters; + + static equals(a: GuidanceScheduleParameters | PlainMessage | undefined, b: GuidanceScheduleParameters | PlainMessage | undefined): boolean; +} + +/** + * Parameters that affect the behavior of the guidance, typically used for CLIP. + * We can specify more than one model, and the guidance will be a weighted sum + * of the models. + * + * @generated from message stabilityai.platformapis.generation.v1.GuidanceInstanceParameters + */ +export declare class GuidanceInstanceParameters extends Message { + /** + * models to use for this set + * + * @generated from field: repeated stabilityai.platformapis.generation.v1.Model models = 2; + */ + models: Model[]; + + /** + * 0.0 to 1.0, usually 0.05 to 0.225 + * + * @generated from field: optional float guidance_strength = 3; + */ + guidanceStrength?: number; + + /** + * when to apply guidance + * + * @generated from field: repeated stabilityai.platformapis.generation.v1.GuidanceScheduleParameters schedule = 4; + */ + schedule: GuidanceScheduleParameters[]; + + /** + * cutout parameters + * + * @generated from field: optional stabilityai.platformapis.generation.v1.CutoutParameters cutouts = 5; + */ + cutouts?: CutoutParameters; + + /** + * prompt to use for guidance + * + * @generated from field: optional stabilityai.platformapis.generation.v1.Prompt prompt = 6; + */ + prompt?: Prompt; + + constructor(data?: PartialMessage); + + static readonly runtime: typeof proto3; + static readonly typeName = "stabilityai.platformapis.generation.v1.GuidanceInstanceParameters"; + static readonly fields: FieldList; + + static fromBinary(bytes: Uint8Array, options?: Partial): GuidanceInstanceParameters; + + static fromJson(jsonValue: JsonValue, options?: Partial): GuidanceInstanceParameters; + + static fromJsonString(jsonString: string, options?: Partial): GuidanceInstanceParameters; + + static equals(a: GuidanceInstanceParameters | PlainMessage | undefined, b: GuidanceInstanceParameters | PlainMessage | undefined): boolean; +} + +/** + * Parameters that affect the behavior of the guidance, typically used for CLIP. + * The omission of this field implies the default guidance of CFG. + * + * @generated from message stabilityai.platformapis.generation.v1.GuidanceParameters + */ +export declare class GuidanceParameters extends Message { + /** + * base preset for guidance + * + * @generated from field: stabilityai.platformapis.generation.v1.GuidancePreset guidance_preset = 1; + */ + guidancePreset: GuidancePreset; + + /** + * guidance instances + * + * @generated from field: repeated stabilityai.platformapis.generation.v1.GuidanceInstanceParameters instances = 2; + */ + instances: GuidanceInstanceParameters[]; + + constructor(data?: PartialMessage); + + static readonly runtime: typeof proto3; + static readonly typeName = "stabilityai.platformapis.generation.v1.GuidanceParameters"; + static readonly fields: FieldList; + + static fromBinary(bytes: Uint8Array, options?: Partial): GuidanceParameters; + + static fromJson(jsonValue: JsonValue, options?: Partial): GuidanceParameters; + + static fromJsonString(jsonString: string, options?: Partial): GuidanceParameters; + + static equals(a: GuidanceParameters | PlainMessage | undefined, b: GuidanceParameters | PlainMessage | undefined): boolean; +} + +/** + * @generated from message stabilityai.platformapis.generation.v1.TransformType + */ +export declare class TransformType extends Message { + /** + * @generated from oneof stabilityai.platformapis.generation.v1.TransformType.type + */ + type: { + /** + * @generated from field: stabilityai.platformapis.generation.v1.DiffusionSampler diffusion = 1; + */ + value: DiffusionSampler; + case: "diffusion"; + } | { + /** + * @generated from field: stabilityai.platformapis.generation.v1.Upscaler upscaler = 2; + */ + value: Upscaler; + case: "upscaler"; + } | { case: undefined; value?: undefined }; + + constructor(data?: PartialMessage); + + static readonly runtime: typeof proto3; + static readonly typeName = "stabilityai.platformapis.generation.v1.TransformType"; + static readonly fields: FieldList; + + static fromBinary(bytes: Uint8Array, options?: Partial): TransformType; + + static fromJson(jsonValue: JsonValue, options?: Partial): TransformType; + + static fromJsonString(jsonString: string, options?: Partial): TransformType; + + static equals(a: TransformType | PlainMessage | undefined, b: TransformType | PlainMessage | undefined): boolean; +} + +/** + * @generated from message stabilityai.platformapis.generation.v1.T2IAdapterParameter + */ +export declare class T2IAdapterParameter extends Message { + /** + * @generated from field: stabilityai.platformapis.generation.v1.T2IAdapter adapter_type = 1; + */ + adapterType: T2IAdapter; + + /** + * @generated from field: float adapter_strength = 2; + */ + adapterStrength: number; + + /** + * @generated from field: stabilityai.platformapis.generation.v1.T2IAdapterInit adapter_init_type = 3; + */ + adapterInitType: T2IAdapterInit; + + constructor(data?: PartialMessage); + + static readonly runtime: typeof proto3; + static readonly typeName = "stabilityai.platformapis.generation.v1.T2IAdapterParameter"; + static readonly fields: FieldList; + + static fromBinary(bytes: Uint8Array, options?: Partial): T2IAdapterParameter; + + static fromJson(jsonValue: JsonValue, options?: Partial): T2IAdapterParameter; + + static fromJsonString(jsonString: string, options?: Partial): T2IAdapterParameter; + + static equals(a: T2IAdapterParameter | PlainMessage | undefined, b: T2IAdapterParameter | PlainMessage | undefined): boolean; +} + +/** + * @generated from message stabilityai.platformapis.generation.v1.ContentCredentialsParameters + */ +export declare class ContentCredentialsParameters extends Message { + /** + * @generated from oneof stabilityai.platformapis.generation.v1.ContentCredentialsParameters.parameters + */ + parameters: { + /** + * @generated from field: stabilityai.platformapis.generation.v1.ContentCredentialsParameters.ModelMetadata model_metadata = 1; + */ + value: ContentCredentialsParameters_ModelMetadata; + case: "modelMetadata"; + } | { case: undefined; value?: undefined }; + + constructor(data?: PartialMessage); + + static readonly runtime: typeof proto3; + static readonly typeName = "stabilityai.platformapis.generation.v1.ContentCredentialsParameters"; + static readonly fields: FieldList; + + static fromBinary(bytes: Uint8Array, options?: Partial): ContentCredentialsParameters; + + static fromJson(jsonValue: JsonValue, options?: Partial): ContentCredentialsParameters; + + static fromJsonString(jsonString: string, options?: Partial): ContentCredentialsParameters; + + static equals(a: ContentCredentialsParameters | PlainMessage | undefined, b: ContentCredentialsParameters | PlainMessage | undefined): boolean; +} + +/** + * @generated from enum stabilityai.platformapis.generation.v1.ContentCredentialsParameters.ModelMetadata + */ +export declare enum ContentCredentialsParameters_ModelMetadata { + /** + * @generated from enum value: MODEL_METADATA_UNSPECIFIED = 0; + */ + UNSPECIFIED = 0, + + /** + * @generated from enum value: MODEL_METADATA_SIGN_WITH_ENGINE_ID = 1; + */ + SIGN_WITH_ENGINE_ID = 1, +} + +/** + * FineTuningParameters specify which fine-tuned models to use for generation. + * + * @generated from message stabilityai.platformapis.generation.v1.FineTuningParameters + */ +export declare class FineTuningParameters extends Message { + /** + * The id of the fine-tuned model to generate content from. + * See FineTuningModel.id in finetuning.proto. + * Model Id is created upon invoking CreateFineTuningModel. + * When GetFineTuningModelStatus returns a FineTuningModelStatus of + * FINE_TUNING_MODEL_STATUS_COMPLETED, the model can be used + * for generating images. + * + * @generated from field: string model_id = 1; + */ + modelId: string; + + /** + * defaults to 1.0 + * + * @generated from field: optional float weight = 2; + */ + weight?: number; + + constructor(data?: PartialMessage); + + static readonly runtime: typeof proto3; + static readonly typeName = "stabilityai.platformapis.generation.v1.FineTuningParameters"; + static readonly fields: FieldList; + + static fromBinary(bytes: Uint8Array, options?: Partial): FineTuningParameters; + + static fromJson(jsonValue: JsonValue, options?: Partial): FineTuningParameters; + + static fromJsonString(jsonString: string, options?: Partial): FineTuningParameters; + + static equals(a: FineTuningParameters | PlainMessage | undefined, b: FineTuningParameters | PlainMessage | undefined): boolean; +} + +/** + * @generated from message stabilityai.platformapis.generation.v1.ImageParameters + */ +export declare class ImageParameters extends Message { + /** + * @generated from field: optional uint64 height = 1; + */ + height?: bigint; + + /** + * @generated from field: optional uint64 width = 2; + */ + width?: bigint; + + /** + * @generated from field: repeated uint32 seed = 3; + */ + seed: number[]; + + /** + * @generated from field: optional uint64 samples = 4; + */ + samples?: bigint; + + /** + * @generated from field: optional uint64 steps = 5; + */ + steps?: bigint; + + /** + * @generated from field: optional stabilityai.platformapis.generation.v1.TransformType transform = 6; + */ + transform?: TransformType; + + /** + * @generated from field: repeated stabilityai.platformapis.generation.v1.StepParameter parameters = 7; + */ + parameters: StepParameter[]; + + /** + * defaults to MASKED_AREA_INIT_ZERO + * + * @generated from field: optional stabilityai.platformapis.generation.v1.MaskedAreaInit masked_area_init = 8; + */ + maskedAreaInit?: MaskedAreaInit; + + /** + * defaults to TEXT_ENCODER + * + * @generated from field: optional stabilityai.platformapis.generation.v1.WeightMethod weight_method = 9; + */ + weightMethod?: WeightMethod; + + /** + * defaults to true + * + * @generated from field: optional bool quantize = 10; + */ + quantize?: boolean; + + /** + * @generated from field: optional stabilityai.platformapis.generation.v1.T2IAdapterParameter adapter = 12; + */ + adapter?: T2IAdapterParameter; + + /** + * @generated from field: repeated stabilityai.platformapis.generation.v1.FineTuningParameters fine_tuning_parameters = 13; + */ + fineTuningParameters: FineTuningParameters[]; + + /** + * Set field to have image signed by C2PA + * + * @generated from field: optional stabilityai.platformapis.generation.v1.ContentCredentialsParameters content_credentials_parameters = 14; + */ + contentCredentialsParameters?: ContentCredentialsParameters; + + constructor(data?: PartialMessage); + + static readonly runtime: typeof proto3; + static readonly typeName = "stabilityai.platformapis.generation.v1.ImageParameters"; + static readonly fields: FieldList; + + static fromBinary(bytes: Uint8Array, options?: Partial): ImageParameters; + + static fromJson(jsonValue: JsonValue, options?: Partial): ImageParameters; + + static fromJsonString(jsonString: string, options?: Partial): ImageParameters; + + static equals(a: ImageParameters | PlainMessage | undefined, b: ImageParameters | PlainMessage | undefined): boolean; +} + +/** + * @generated from message stabilityai.platformapis.generation.v1.ClassifierConcept + */ +export declare class ClassifierConcept extends Message { + /** + * @generated from field: string concept = 1; + */ + concept: string; + + /** + * @generated from field: optional float threshold = 2; + */ + threshold?: number; + + constructor(data?: PartialMessage); + + static readonly runtime: typeof proto3; + static readonly typeName = "stabilityai.platformapis.generation.v1.ClassifierConcept"; + static readonly fields: FieldList; + + static fromBinary(bytes: Uint8Array, options?: Partial): ClassifierConcept; + + static fromJson(jsonValue: JsonValue, options?: Partial): ClassifierConcept; + + static fromJsonString(jsonString: string, options?: Partial): ClassifierConcept; + + static equals(a: ClassifierConcept | PlainMessage | undefined, b: ClassifierConcept | PlainMessage | undefined): boolean; +} + +/** + * @generated from message stabilityai.platformapis.generation.v1.ClassifierCategory + */ +export declare class ClassifierCategory extends Message { + /** + * @generated from field: string name = 1; + */ + name: string; + + /** + * @generated from field: repeated stabilityai.platformapis.generation.v1.ClassifierConcept concepts = 2; + */ + concepts: ClassifierConcept[]; + + /** + * @generated from field: optional float adjustment = 3; + */ + adjustment?: number; + + /** + * @generated from field: optional stabilityai.platformapis.generation.v1.Action action = 4; + */ + action?: Action; + + /** + * @generated from field: optional stabilityai.platformapis.generation.v1.ClassifierMode classifier_mode = 5; + */ + classifierMode?: ClassifierMode; + + constructor(data?: PartialMessage); + + static readonly runtime: typeof proto3; + static readonly typeName = "stabilityai.platformapis.generation.v1.ClassifierCategory"; + static readonly fields: FieldList; + + static fromBinary(bytes: Uint8Array, options?: Partial): ClassifierCategory; + + static fromJson(jsonValue: JsonValue, options?: Partial): ClassifierCategory; + + static fromJsonString(jsonString: string, options?: Partial): ClassifierCategory; + + static equals(a: ClassifierCategory | PlainMessage | undefined, b: ClassifierCategory | PlainMessage | undefined): boolean; +} + +/** + * @generated from message stabilityai.platformapis.generation.v1.ClassifierParameters + */ +export declare class ClassifierParameters extends Message { + /** + * @generated from field: repeated stabilityai.platformapis.generation.v1.ClassifierCategory categories = 1; + */ + categories: ClassifierCategory[]; + + /** + * @generated from field: repeated stabilityai.platformapis.generation.v1.ClassifierCategory exceeds = 2; + */ + exceeds: ClassifierCategory[]; + + /** + * @generated from field: optional stabilityai.platformapis.generation.v1.Action realized_action = 3; + */ + realizedAction?: Action; + + constructor(data?: PartialMessage); + + static readonly runtime: typeof proto3; + static readonly typeName = "stabilityai.platformapis.generation.v1.ClassifierParameters"; + static readonly fields: FieldList; + + static fromBinary(bytes: Uint8Array, options?: Partial): ClassifierParameters; + + static fromJson(jsonValue: JsonValue, options?: Partial): ClassifierParameters; + + static fromJsonString(jsonString: string, options?: Partial): ClassifierParameters; + + static equals(a: ClassifierParameters | PlainMessage | undefined, b: ClassifierParameters | PlainMessage | undefined): boolean; +} + +/** + * Interpolation between two images applied at specified blend ratios + * + * @generated from message stabilityai.platformapis.generation.v1.InterpolateParameters + */ +export declare class InterpolateParameters extends Message { + /** + * @generated from field: repeated float ratios = 1; + */ + ratios: number[]; + + /** + * @generated from field: optional stabilityai.platformapis.generation.v1.InterpolateMode mode = 2; + */ + mode?: InterpolateMode; + + constructor(data?: PartialMessage); + + static readonly runtime: typeof proto3; + static readonly typeName = "stabilityai.platformapis.generation.v1.InterpolateParameters"; + static readonly fields: FieldList; + + static fromBinary(bytes: Uint8Array, options?: Partial): InterpolateParameters; + + static fromJson(jsonValue: JsonValue, options?: Partial): InterpolateParameters; + + static fromJsonString(jsonString: string, options?: Partial): InterpolateParameters; + + static equals(a: InterpolateParameters | PlainMessage | undefined, b: InterpolateParameters | PlainMessage | undefined): boolean; +} + +/** + * @generated from message stabilityai.platformapis.generation.v1.TransformColorAdjust + */ +export declare class TransformColorAdjust extends Message { + /** + * scale pixel intensities, 1.0 is no change + * + * @generated from field: optional float brightness = 1; + */ + brightness?: number; + + /** + * contrast adjustment, 1.0 is no change + * + * @generated from field: optional float contrast = 2; + */ + contrast?: number; + + /** + * -180 to 180 hue adjustment, 0.0 is no change + * + * @generated from field: optional float hue = 3; + */ + hue?: number; + + /** + * 0.0 to 2.0 saturation scale, 1.0 is no change + * + * @generated from field: optional float saturation = 4; + */ + saturation?: number; + + /** + * -1.0 to 1.0 lightness adjustment, 0.0 is no change + * + * @generated from field: optional float lightness = 5; + */ + lightness?: number; + + /** + * image to color match + * + * @generated from field: optional stabilityai.platformapis.generation.v1.Artifact match_image = 6; + */ + matchImage?: Artifact; + + /** + * color match mode to use + * + * @generated from field: optional stabilityai.platformapis.generation.v1.ColorMatchMode match_mode = 7; + */ + matchMode?: ColorMatchMode; + + /** + * amount of gaussian noise to add + * + * @generated from field: optional float noise_amount = 8; + */ + noiseAmount?: number; + + /** + * random seed for noise + * + * @generated from field: optional uint32 noise_seed = 9; + */ + noiseSeed?: number; + + constructor(data?: PartialMessage); + + static readonly runtime: typeof proto3; + static readonly typeName = "stabilityai.platformapis.generation.v1.TransformColorAdjust"; + static readonly fields: FieldList; + + static fromBinary(bytes: Uint8Array, options?: Partial): TransformColorAdjust; + + static fromJson(jsonValue: JsonValue, options?: Partial): TransformColorAdjust; + + static fromJsonString(jsonString: string, options?: Partial): TransformColorAdjust; + + static equals(a: TransformColorAdjust | PlainMessage | undefined, b: TransformColorAdjust | PlainMessage | undefined): boolean; +} + +/** + * @generated from message stabilityai.platformapis.generation.v1.TransformDepthCalc + */ +export declare class TransformDepthCalc extends Message { + /** + * blend factor between AdaBins (0.0) and MiDaS (1.0) + * + * @generated from field: optional float blend_weight = 1; + */ + blendWeight?: number; + + /** + * defaults to 0.0 + * + * @generated from field: optional uint32 blur_radius = 2; + */ + blurRadius?: number; + + /** + * make near depths have higher values + * + * @generated from field: optional bool reverse = 3; + */ + reverse?: boolean; + + constructor(data?: PartialMessage); + + static readonly runtime: typeof proto3; + static readonly typeName = "stabilityai.platformapis.generation.v1.TransformDepthCalc"; + static readonly fields: FieldList; + + static fromBinary(bytes: Uint8Array, options?: Partial): TransformDepthCalc; + + static fromJson(jsonValue: JsonValue, options?: Partial): TransformDepthCalc; + + static fromJsonString(jsonString: string, options?: Partial): TransformDepthCalc; + + static equals(a: TransformDepthCalc | PlainMessage | undefined, b: TransformDepthCalc | PlainMessage | undefined): boolean; +} + +/** + * @generated from message stabilityai.platformapis.generation.v1.TransformMatrix + */ +export declare class TransformMatrix extends Message { + /** + * Column-major 3x3 or 4x4 perspective matrix + * [sx, 10, 20, tx] [x] + * [01, sy, 21, ty] . [y] + * [02, 12, sz, tz] [z] + * [03, 13, 23, 33] [1] + * + * @generated from field: repeated float data = 1 [packed = true]; + */ + data: number[]; + + constructor(data?: PartialMessage); + + static readonly runtime: typeof proto3; + static readonly typeName = "stabilityai.platformapis.generation.v1.TransformMatrix"; + static readonly fields: FieldList; + + static fromBinary(bytes: Uint8Array, options?: Partial): TransformMatrix; + + static fromJson(jsonValue: JsonValue, options?: Partial): TransformMatrix; + + static fromJsonString(jsonString: string, options?: Partial): TransformMatrix; + + static equals(a: TransformMatrix | PlainMessage | undefined, b: TransformMatrix | PlainMessage | undefined): boolean; +} + +/** + * @generated from message stabilityai.platformapis.generation.v1.TransformResample + */ +export declare class TransformResample extends Message { + /** + * extrapolation of border pixels + * + * @generated from field: stabilityai.platformapis.generation.v1.BorderMode border_mode = 1; + */ + borderMode: BorderMode; + + /** + * 3x3 or 4x4 matrix + * + * @generated from field: stabilityai.platformapis.generation.v1.TransformMatrix transform = 2; + */ + transform?: TransformMatrix; + + /** + * 3x3 or 4x4 matrix, defaults to identity + * + * @generated from field: optional stabilityai.platformapis.generation.v1.TransformMatrix prev_transform = 3; + */ + prevTransform?: TransformMatrix; + + /** + * depth warp factor, defaults to 1.0 + * + * @generated from field: optional float depth_warp = 4; + */ + depthWarp?: number; + + /** + * return inpaint mask + * + * @generated from field: optional bool export_mask = 5; + */ + exportMask?: boolean; + + constructor(data?: PartialMessage); + + static readonly runtime: typeof proto3; + static readonly typeName = "stabilityai.platformapis.generation.v1.TransformResample"; + static readonly fields: FieldList; + + static fromBinary(bytes: Uint8Array, options?: Partial): TransformResample; + + static fromJson(jsonValue: JsonValue, options?: Partial): TransformResample; + + static fromJsonString(jsonString: string, options?: Partial): TransformResample; + + static equals(a: TransformResample | PlainMessage | undefined, b: TransformResample | PlainMessage | undefined): boolean; +} + +/** + * @generated from message stabilityai.platformapis.generation.v1.CameraParameters + */ +export declare class CameraParameters extends Message { + /** + * @generated from field: stabilityai.platformapis.generation.v1.CameraType camera_type = 1; + */ + cameraType: CameraType; + + /** + * Nearest plane depth of a rendered frustum + * + * @generated from field: float near_plane = 2; + */ + nearPlane: number; + + /** + * Farthest plane depth of a rendered frustum + * + * @generated from field: float far_plane = 3; + */ + farPlane: number; + + /** + * Camera field of view (in degrees). Must be set for CAMERA_PERSPECTIVE type. + * + * @generated from field: optional float fov = 4; + */ + fov?: number; + + constructor(data?: PartialMessage); + + static readonly runtime: typeof proto3; + static readonly typeName = "stabilityai.platformapis.generation.v1.CameraParameters"; + static readonly fields: FieldList; + + static fromBinary(bytes: Uint8Array, options?: Partial): CameraParameters; + + static fromJson(jsonValue: JsonValue, options?: Partial): CameraParameters; + + static fromJsonString(jsonString: string, options?: Partial): CameraParameters; + + static equals(a: CameraParameters | PlainMessage | undefined, b: CameraParameters | PlainMessage | undefined): boolean; +} + +/** + * @generated from message stabilityai.platformapis.generation.v1.TransformCameraPose + */ +export declare class TransformCameraPose extends Message { + /** + * 4x4 transform matrix for the next frame + * + * @generated from field: stabilityai.platformapis.generation.v1.TransformMatrix world_to_view_matrix = 1; + */ + worldToViewMatrix?: TransformMatrix; + + /** + * @generated from field: stabilityai.platformapis.generation.v1.CameraParameters camera_parameters = 2; + */ + cameraParameters?: CameraParameters; + + /** + * Prefill masked areas with values matching the colors around the area + * + * @generated from field: bool do_prefill = 5; + */ + doPrefill: boolean; + + /** + * Both image and mask will be rendered using this method. + * + * @generated from field: stabilityai.platformapis.generation.v1.RenderMode render_mode = 8; + */ + renderMode: RenderMode; + + constructor(data?: PartialMessage); + + static readonly runtime: typeof proto3; + static readonly typeName = "stabilityai.platformapis.generation.v1.TransformCameraPose"; + static readonly fields: FieldList; + + static fromBinary(bytes: Uint8Array, options?: Partial): TransformCameraPose; + + static fromJson(jsonValue: JsonValue, options?: Partial): TransformCameraPose; + + static fromJsonString(jsonString: string, options?: Partial): TransformCameraPose; + + static equals(a: TransformCameraPose | PlainMessage | undefined, b: TransformCameraPose | PlainMessage | undefined): boolean; +} + +/** + * @generated from message stabilityai.platformapis.generation.v1.TransformParameters + */ +export declare class TransformParameters extends Message { + /** + * @generated from oneof stabilityai.platformapis.generation.v1.TransformParameters.transform + */ + transform: { + /** + * @generated from field: stabilityai.platformapis.generation.v1.TransformColorAdjust color_adjust = 2; + */ + value: TransformColorAdjust; + case: "colorAdjust"; + } | { + /** + * @generated from field: stabilityai.platformapis.generation.v1.TransformDepthCalc depth_calc = 4; + */ + value: TransformDepthCalc; + case: "depthCalc"; + } | { + /** + * @generated from field: stabilityai.platformapis.generation.v1.TransformResample resample = 5; + */ + value: TransformResample; + case: "resample"; + } | { + /** + * @generated from field: stabilityai.platformapis.generation.v1.TransformCameraPose camera_pose = 6; + */ + value: TransformCameraPose; + case: "cameraPose"; + } | { case: undefined; value?: undefined }; + + constructor(data?: PartialMessage); + + static readonly runtime: typeof proto3; + static readonly typeName = "stabilityai.platformapis.generation.v1.TransformParameters"; + static readonly fields: FieldList; + + static fromBinary(bytes: Uint8Array, options?: Partial): TransformParameters; + + static fromJson(jsonValue: JsonValue, options?: Partial): TransformParameters; + + static fromJsonString(jsonString: string, options?: Partial): TransformParameters; + + static equals(a: TransformParameters | PlainMessage | undefined, b: TransformParameters | PlainMessage | undefined): boolean; +} + +/** + * @generated from message stabilityai.platformapis.generation.v1.AssetParameters + */ +export declare class AssetParameters extends Message { + /** + * @generated from field: stabilityai.platformapis.generation.v1.AssetAction action = 1; + */ + action: AssetAction; + + /** + * @generated from field: string project_id = 2; + */ + projectId: string; + + /** + * @generated from field: stabilityai.platformapis.generation.v1.AssetUse use = 3; + */ + use: AssetUse; + + constructor(data?: PartialMessage); + + static readonly runtime: typeof proto3; + static readonly typeName = "stabilityai.platformapis.generation.v1.AssetParameters"; + static readonly fields: FieldList; + + static fromBinary(bytes: Uint8Array, options?: Partial): AssetParameters; + + static fromJson(jsonValue: JsonValue, options?: Partial): AssetParameters; + + static fromJsonString(jsonString: string, options?: Partial): AssetParameters; + + static equals(a: AssetParameters | PlainMessage | undefined, b: AssetParameters | PlainMessage | undefined): boolean; +} + +/** + * AnswerMeta is a set of metadata about an answer, usually the operating + * environment. + * + * @generated from message stabilityai.platformapis.generation.v1.AnswerMeta + */ +export declare class AnswerMeta extends Message { + /** + * @generated from field: optional string gpu_id = 1; + */ + gpuId?: string; + + /** + * @generated from field: optional string cpu_id = 2; + */ + cpuId?: string; + + /** + * @generated from field: optional string node_id = 3; + */ + nodeId?: string; + + /** + * @generated from field: optional string engine_id = 4; + */ + engineId?: string; + + constructor(data?: PartialMessage); + + static readonly runtime: typeof proto3; + static readonly typeName = "stabilityai.platformapis.generation.v1.AnswerMeta"; + static readonly fields: FieldList; + + static fromBinary(bytes: Uint8Array, options?: Partial): AnswerMeta; + + static fromJson(jsonValue: JsonValue, options?: Partial): AnswerMeta; + + static fromJsonString(jsonString: string, options?: Partial): AnswerMeta; + + static equals(a: AnswerMeta | PlainMessage | undefined, b: AnswerMeta | PlainMessage | undefined): boolean; +} + +/** + * An Answer is a response to a Request. It is a set of Artifacts, which can be + * of any type and forwarded to the client or the next stage. + * + * @generated from message stabilityai.platformapis.generation.v1.Answer + */ +export declare class Answer extends Message { + /** + * @generated from field: string answer_id = 1; + */ + answerId: string; + + /** + * @generated from field: string request_id = 2; + */ + requestId: string; + + /** + * @generated from field: uint64 received = 3; + */ + received: bigint; + + /** + * @generated from field: uint64 created = 4; + */ + created: bigint; + + /** + * @generated from field: optional stabilityai.platformapis.generation.v1.AnswerMeta meta = 6; + */ + meta?: AnswerMeta; + + /** + * @generated from field: repeated stabilityai.platformapis.generation.v1.Artifact artifacts = 7; + */ + artifacts: Artifact[]; + + constructor(data?: PartialMessage); + + static readonly runtime: typeof proto3; + static readonly typeName = "stabilityai.platformapis.generation.v1.Answer"; + static readonly fields: FieldList; + + static fromBinary(bytes: Uint8Array, options?: Partial): Answer; + + static fromJson(jsonValue: JsonValue, options?: Partial): Answer; + + static fromJsonString(jsonString: string, options?: Partial): Answer; + + static equals(a: Answer | PlainMessage | undefined, b: Answer | PlainMessage | undefined): boolean; +} + +/** + * An AnswerBatch is a set of Answers. It can represent one or several completed + * requests, which may be sent to the client in a single response. + * + * @generated from message stabilityai.platformapis.generation.v1.AnswerBatch + */ +export declare class AnswerBatch extends Message { + /** + * @generated from field: string batch_id = 1; + */ + batchId: string; + + /** + * @generated from field: repeated stabilityai.platformapis.generation.v1.Answer answers = 2; + */ + answers: Answer[]; + + constructor(data?: PartialMessage); + + static readonly runtime: typeof proto3; + static readonly typeName = "stabilityai.platformapis.generation.v1.AnswerBatch"; + static readonly fields: FieldList; + + static fromBinary(bytes: Uint8Array, options?: Partial): AnswerBatch; + + static fromJson(jsonValue: JsonValue, options?: Partial): AnswerBatch; + + static fromJsonString(jsonString: string, options?: Partial): AnswerBatch; + + static equals(a: AnswerBatch | PlainMessage | undefined, b: AnswerBatch | PlainMessage | undefined): boolean; +} + +/** + * A Request is a set of Artifacts, which can be of any type with model or + * transform parameters. It is sent to the server, which will respond with an + * Answer. + * + * @generated from message stabilityai.platformapis.generation.v1.Request + */ +export declare class Request extends Message { + /** + * @generated from field: string engine_id = 1; + */ + engineId: string; + + /** + * @generated from field: string request_id = 2; + */ + requestId: string; + + /** + * @generated from field: stabilityai.platformapis.generation.v1.ArtifactType requested_type = 3; + */ + requestedType: ArtifactType; + + /** + * @generated from field: repeated stabilityai.platformapis.generation.v1.Prompt prompt = 4; + */ + prompt: Prompt[]; + + /** + * @generated from oneof stabilityai.platformapis.generation.v1.Request.params + */ + params: { + /** + * @generated from field: stabilityai.platformapis.generation.v1.ImageParameters image = 5; + */ + value: ImageParameters; + case: "image"; + } | { + /** + * @generated from field: stabilityai.platformapis.generation.v1.ClassifierParameters classifier = 7; + */ + value: ClassifierParameters; + case: "classifier"; + } | { + /** + * @generated from field: stabilityai.platformapis.generation.v1.AssetParameters asset = 8; + */ + value: AssetParameters; + case: "asset"; + } | { + /** + * @generated from field: stabilityai.platformapis.generation.v1.InterpolateParameters interpolate = 11; + */ + value: InterpolateParameters; + case: "interpolate"; + } | { + /** + * @generated from field: stabilityai.platformapis.generation.v1.TransformParameters transform = 12; + */ + value: TransformParameters; + case: "transform"; + } | { case: undefined; value?: undefined }; + + /** + * @generated from field: optional stabilityai.platformapis.generation.v1.ConditionerParameters conditioner = 6; + */ + conditioner?: ConditionerParameters; + + /** + * for development use + * + * @generated from field: optional google.protobuf.Struct extras = 2047; + */ + extras?: Struct; + + constructor(data?: PartialMessage); + + static readonly runtime: typeof proto3; + static readonly typeName = "stabilityai.platformapis.generation.v1.Request"; + static readonly fields: FieldList; + + static fromBinary(bytes: Uint8Array, options?: Partial): Request; + + static fromJson(jsonValue: JsonValue, options?: Partial): Request; + + static fromJsonString(jsonString: string, options?: Partial): Request; + + static equals(a: Request | PlainMessage | undefined, b: Request | PlainMessage | undefined): boolean; +} + +/** + * @generated from message stabilityai.platformapis.generation.v1.OnStatus + */ +export declare class OnStatus extends Message { + /** + * @generated from field: repeated stabilityai.platformapis.generation.v1.FinishReason reason = 1; + */ + reason: FinishReason[]; + + /** + * @generated from field: optional string target = 2; + */ + target?: string; + + /** + * @generated from field: repeated stabilityai.platformapis.generation.v1.StageAction action = 3; + */ + action: StageAction[]; + + constructor(data?: PartialMessage); + + static readonly runtime: typeof proto3; + static readonly typeName = "stabilityai.platformapis.generation.v1.OnStatus"; + static readonly fields: FieldList; + + static fromBinary(bytes: Uint8Array, options?: Partial): OnStatus; + + static fromJson(jsonValue: JsonValue, options?: Partial): OnStatus; + + static fromJsonString(jsonString: string, options?: Partial): OnStatus; + + static equals(a: OnStatus | PlainMessage | undefined, b: OnStatus | PlainMessage | undefined): boolean; +} + +/** + * @generated from message stabilityai.platformapis.generation.v1.Stage + */ +export declare class Stage extends Message { + /** + * @generated from field: string id = 1; + */ + id: string; + + /** + * @generated from field: stabilityai.platformapis.generation.v1.Request request = 2; + */ + request?: Request; + + /** + * @generated from field: repeated stabilityai.platformapis.generation.v1.OnStatus on_status = 3; + */ + onStatus: OnStatus[]; + + constructor(data?: PartialMessage); + + static readonly runtime: typeof proto3; + static readonly typeName = "stabilityai.platformapis.generation.v1.Stage"; + static readonly fields: FieldList; + + static fromBinary(bytes: Uint8Array, options?: Partial): Stage; + + static fromJson(jsonValue: JsonValue, options?: Partial): Stage; + + static fromJsonString(jsonString: string, options?: Partial): Stage; + + static equals(a: Stage | PlainMessage | undefined, b: Stage | PlainMessage | undefined): boolean; +} + +/** + * @generated from message stabilityai.platformapis.generation.v1.ChainRequest + */ +export declare class ChainRequest extends Message { + /** + * @generated from field: string request_id = 1; + */ + requestId: string; + + /** + * @generated from field: repeated stabilityai.platformapis.generation.v1.Stage stage = 2; + */ + stage: Stage[]; + + constructor(data?: PartialMessage); + + static readonly runtime: typeof proto3; + static readonly typeName = "stabilityai.platformapis.generation.v1.ChainRequest"; + static readonly fields: FieldList; + + static fromBinary(bytes: Uint8Array, options?: Partial): ChainRequest; + + static fromJson(jsonValue: JsonValue, options?: Partial): ChainRequest; + + static fromJsonString(jsonString: string, options?: Partial): ChainRequest; + + static equals(a: ChainRequest | PlainMessage | undefined, b: ChainRequest | PlainMessage | undefined): boolean; +} + diff --git a/src/stability_api/platform/generation/v1/generation_pb.js b/src/stability_api/platform/generation/v1/generation_pb.js new file mode 100644 index 0000000..f30d5b1 --- /dev/null +++ b/src/stability_api/platform/generation/v1/generation_pb.js @@ -0,0 +1,857 @@ +// @generated by protoc-gen-es v1.3.0 +// @generated from file stability_api/platform/generation/v1/generation.proto (package stabilityai.platformapis.generation.v1, syntax proto3) +/* eslint-disable */ +// @ts-nocheck + +import { proto3, Struct } from "@bufbuild/protobuf"; +import { Tensor } from "../../../tensors/tensors_pb.js"; + +/** + * @generated from enum stabilityai.platformapis.generation.v1.FinishReason + */ +export const FinishReason = proto3.makeEnum( + "stabilityai.platformapis.generation.v1.FinishReason", + [ + {no: 0, name: "NULL"}, + {no: 1, name: "LENGTH"}, + {no: 2, name: "STOP"}, + {no: 3, name: "ERROR"}, + {no: 4, name: "FILTER"}, + ], +); + +/** + * @generated from enum stabilityai.platformapis.generation.v1.ArtifactType + */ +export const ArtifactType = proto3.makeEnum( + "stabilityai.platformapis.generation.v1.ArtifactType", + [ + {no: 0, name: "ARTIFACT_NONE"}, + {no: 1, name: "ARTIFACT_IMAGE"}, + {no: 2, name: "ARTIFACT_VIDEO"}, + {no: 3, name: "ARTIFACT_TEXT"}, + {no: 4, name: "ARTIFACT_TOKENS"}, + {no: 5, name: "ARTIFACT_EMBEDDING"}, + {no: 6, name: "ARTIFACT_CLASSIFICATIONS"}, + {no: 7, name: "ARTIFACT_MASK"}, + {no: 8, name: "ARTIFACT_LATENT"}, + {no: 9, name: "ARTIFACT_TENSOR"}, + {no: 10, name: "ARTIFACT_DEPTH"}, + ], +); + +/** + * @generated from enum stabilityai.platformapis.generation.v1.MaskedAreaInit + */ +export const MaskedAreaInit = proto3.makeEnum( + "stabilityai.platformapis.generation.v1.MaskedAreaInit", + [ + {no: 0, name: "MASKED_AREA_INIT_ZERO", localName: "ZERO"}, + {no: 1, name: "MASKED_AREA_INIT_RANDOM", localName: "RANDOM"}, + {no: 2, name: "MASKED_AREA_INIT_ORIGINAL", localName: "ORIGINAL"}, + ], +); + +/** + * @generated from enum stabilityai.platformapis.generation.v1.WeightMethod + */ +export const WeightMethod = proto3.makeEnum( + "stabilityai.platformapis.generation.v1.WeightMethod", + [ + {no: 0, name: "TEXT_ENCODER"}, + {no: 1, name: "CROSS_ATTENTION"}, + ], +); + +/** + * DiffusionSampler identifies which sampler to use for Diffusion, and represents + * the internal set of supported samplers. + * + * @generated from enum stabilityai.platformapis.generation.v1.DiffusionSampler + */ +export const DiffusionSampler = proto3.makeEnum( + "stabilityai.platformapis.generation.v1.DiffusionSampler", + [ + {no: 0, name: "SAMPLER_DDIM"}, + {no: 1, name: "SAMPLER_DDPM"}, + {no: 2, name: "SAMPLER_K_EULER"}, + {no: 3, name: "SAMPLER_K_EULER_ANCESTRAL"}, + {no: 4, name: "SAMPLER_K_HEUN"}, + {no: 5, name: "SAMPLER_K_DPM_2"}, + {no: 6, name: "SAMPLER_K_DPM_2_ANCESTRAL"}, + {no: 7, name: "SAMPLER_K_LMS"}, + {no: 8, name: "SAMPLER_K_DPMPP_2S_ANCESTRAL"}, + {no: 9, name: "SAMPLER_K_DPMPP_2M"}, + {no: 10, name: "SAMPLER_K_DPMPP_SDE"}, + ], +); + +/** + * Future, unimplemented. + * + * @generated from enum stabilityai.platformapis.generation.v1.Upscaler + */ +export const Upscaler = proto3.makeEnum( + "stabilityai.platformapis.generation.v1.Upscaler", + [ + {no: 0, name: "UPSCALER_RGB", localName: "RGB"}, + {no: 1, name: "UPSCALER_GFPGAN", localName: "GFPGAN"}, + {no: 2, name: "UPSCALER_ESRGAN", localName: "ESRGAN"}, + ], +); + +/** + * Presets for CLIP guidance. + * + * @generated from enum stabilityai.platformapis.generation.v1.GuidancePreset + */ +export const GuidancePreset = proto3.makeEnum( + "stabilityai.platformapis.generation.v1.GuidancePreset", + [ + {no: 0, name: "GUIDANCE_PRESET_NONE", localName: "NONE"}, + {no: 1, name: "GUIDANCE_PRESET_SIMPLE", localName: "SIMPLE"}, + {no: 2, name: "GUIDANCE_PRESET_FAST_BLUE", localName: "FAST_BLUE"}, + {no: 3, name: "GUIDANCE_PRESET_FAST_GREEN", localName: "FAST_GREEN"}, + {no: 4, name: "GUIDANCE_PRESET_SLOW", localName: "SLOW"}, + {no: 5, name: "GUIDANCE_PRESET_SLOWER", localName: "SLOWER"}, + {no: 6, name: "GUIDANCE_PRESET_SLOWEST", localName: "SLOWEST"}, + ], +); + +/** + * @generated from enum stabilityai.platformapis.generation.v1.ModelArchitecture + */ +export const ModelArchitecture = proto3.makeEnum( + "stabilityai.platformapis.generation.v1.ModelArchitecture", + [ + {no: 0, name: "MODEL_ARCHITECTURE_NONE", localName: "NONE"}, + {no: 1, name: "MODEL_ARCHITECTURE_CLIP_VIT", localName: "CLIP_VIT"}, + {no: 2, name: "MODEL_ARCHITECTURE_CLIP_RESNET", localName: "CLIP_RESNET"}, + {no: 3, name: "MODEL_ARCHITECTURE_LDM", localName: "LDM"}, + ], +); + +/** + * @generated from enum stabilityai.platformapis.generation.v1.T2IAdapter + */ +export const T2IAdapter = proto3.makeEnum( + "stabilityai.platformapis.generation.v1.T2IAdapter", + [ + {no: 0, name: "T2IADAPTER_NONE"}, + {no: 1, name: "T2IADAPTER_SKETCH"}, + {no: 2, name: "T2IADAPTER_DEPTH"}, + {no: 3, name: "T2IADAPTER_CANNY"}, + ], +); + +/** + * If adapter_type is not None, then the user can choose what type of init_image to pass in: either an arbitrary image + * which will then be converted to a depth map, sketch, or canny edge for the sketch, depth and canny adapters respectively, + * or they can pass in their own depth map, sketch or canny edge. This field controls whether the init_image should + * be interpreted as an arbitrary image to be preprocessed ready for the t2i adapter, or whether it has already been + * preprocessed elsewhere + * + * @generated from enum stabilityai.platformapis.generation.v1.T2IAdapterInit + */ +export const T2IAdapterInit = proto3.makeEnum( + "stabilityai.platformapis.generation.v1.T2IAdapterInit", + [ + {no: 0, name: "T2IADAPTERINIT_IMAGE"}, + {no: 1, name: "T2IADAPTERINIT_ADAPTER_IMAGE"}, + ], +); + +/** + * @generated from enum stabilityai.platformapis.generation.v1.Action + */ +export const Action = proto3.makeEnum( + "stabilityai.platformapis.generation.v1.Action", + [ + {no: 0, name: "ACTION_PASSTHROUGH", localName: "PASSTHROUGH"}, + {no: 1, name: "ACTION_REGENERATE_DUPLICATE", localName: "REGENERATE_DUPLICATE"}, + {no: 2, name: "ACTION_REGENERATE", localName: "REGENERATE"}, + {no: 3, name: "ACTION_OBFUSCATE_DUPLICATE", localName: "OBFUSCATE_DUPLICATE"}, + {no: 4, name: "ACTION_OBFUSCATE", localName: "OBFUSCATE"}, + {no: 5, name: "ACTION_DISCARD", localName: "DISCARD"}, + ], +); + +/** + * @generated from enum stabilityai.platformapis.generation.v1.ClassifierMode + */ +export const ClassifierMode = proto3.makeEnum( + "stabilityai.platformapis.generation.v1.ClassifierMode", + [ + {no: 0, name: "CLSFR_MODE_ZEROSHOT"}, + {no: 1, name: "CLSFR_MODE_MULTICLASS"}, + ], +); + +/** + * @generated from enum stabilityai.platformapis.generation.v1.InterpolateMode + */ +export const InterpolateMode = proto3.makeEnum( + "stabilityai.platformapis.generation.v1.InterpolateMode", + [ + {no: 0, name: "INTERPOLATE_LINEAR"}, + {no: 1, name: "INTERPOLATE_RIFE"}, + {no: 2, name: "INTERPOLATE_VAE_LINEAR"}, + {no: 3, name: "INTERPOLATE_VAE_SLERP"}, + {no: 4, name: "INTERPOLATE_FILM"}, + ], +); + +/** + * @generated from enum stabilityai.platformapis.generation.v1.BorderMode + */ +export const BorderMode = proto3.makeEnum( + "stabilityai.platformapis.generation.v1.BorderMode", + [ + {no: 0, name: "BORDER_REFLECT"}, + {no: 1, name: "BORDER_REPLICATE"}, + {no: 2, name: "BORDER_WRAP"}, + {no: 3, name: "BORDER_ZERO"}, + {no: 4, name: "BORDER_PREFILL"}, + ], +); + +/** + * @generated from enum stabilityai.platformapis.generation.v1.ColorMatchMode + */ +export const ColorMatchMode = proto3.makeEnum( + "stabilityai.platformapis.generation.v1.ColorMatchMode", + [ + {no: 0, name: "COLOR_MATCH_HSV"}, + {no: 1, name: "COLOR_MATCH_LAB"}, + {no: 2, name: "COLOR_MATCH_RGB"}, + ], +); + +/** + * @generated from enum stabilityai.platformapis.generation.v1.CameraType + */ +export const CameraType = proto3.makeEnum( + "stabilityai.platformapis.generation.v1.CameraType", + [ + {no: 0, name: "CAMERA_PERSPECTIVE"}, + {no: 1, name: "CAMERA_ORTHOGRAPHIC"}, + ], +); + +/** + * @generated from enum stabilityai.platformapis.generation.v1.RenderMode + */ +export const RenderMode = proto3.makeEnum( + "stabilityai.platformapis.generation.v1.RenderMode", + [ + {no: 0, name: "RENDER_MESH"}, + {no: 1, name: "RENDER_POINTCLOUD"}, + ], +); + +/** + * @generated from enum stabilityai.platformapis.generation.v1.AssetAction + */ +export const AssetAction = proto3.makeEnum( + "stabilityai.platformapis.generation.v1.AssetAction", + [ + {no: 0, name: "ASSET_PUT"}, + {no: 1, name: "ASSET_GET"}, + {no: 2, name: "ASSET_DELETE"}, + ], +); + +/** + * AssetUse defines how the asset is used within a project. This enum matches + * the values the project proto. + * + * @generated from enum stabilityai.platformapis.generation.v1.AssetUse + */ +export const AssetUse = proto3.makeEnum( + "stabilityai.platformapis.generation.v1.AssetUse", + [ + {no: 0, name: "ASSET_USE_UNDEFINED", localName: "UNDEFINED"}, + {no: 1, name: "ASSET_USE_INPUT", localName: "INPUT"}, + {no: 2, name: "ASSET_USE_OUTPUT", localName: "OUTPUT"}, + {no: 3, name: "ASSET_USE_INTERMEDIATE", localName: "INTERMEDIATE"}, + {no: 4, name: "ASSET_USE_PROJECT", localName: "PROJECT"}, + ], +); + +/** + * @generated from enum stabilityai.platformapis.generation.v1.StageAction + */ +export const StageAction = proto3.makeEnum( + "stabilityai.platformapis.generation.v1.StageAction", + [ + {no: 0, name: "STAGE_ACTION_PASS", localName: "PASS"}, + {no: 1, name: "STAGE_ACTION_DISCARD", localName: "DISCARD"}, + {no: 2, name: "STAGE_ACTION_RETURN", localName: "RETURN"}, + ], +); + +/** + * Generally, a GPT BPE 16-bit token, paired with an optional string representation. + * + * @generated from message stabilityai.platformapis.generation.v1.Token + */ +export const Token = proto3.makeMessageType( + "stabilityai.platformapis.generation.v1.Token", + () => [ + { no: 1, name: "text", kind: "scalar", T: 9 /* ScalarType.STRING */, opt: true }, + { no: 2, name: "id", kind: "scalar", T: 13 /* ScalarType.UINT32 */ }, + ], +); + +/** + * Sequence of tokens, paired with the id of the tokenizer used to generate them. + * + * @generated from message stabilityai.platformapis.generation.v1.Tokens + */ +export const Tokens = proto3.makeMessageType( + "stabilityai.platformapis.generation.v1.Tokens", + () => [ + { no: 1, name: "tokens", kind: "message", T: Token, repeated: true }, + { no: 2, name: "tokenizer_id", kind: "scalar", T: 9 /* ScalarType.STRING */, opt: true }, + ], +); + +/** + * A tangible Artifact, such as an image, video, or text that is used for input + * or output. + * + * @generated from message stabilityai.platformapis.generation.v1.Artifact + */ +export const Artifact = proto3.makeMessageType( + "stabilityai.platformapis.generation.v1.Artifact", + () => [ + { no: 1, name: "id", kind: "scalar", T: 4 /* ScalarType.UINT64 */ }, + { no: 2, name: "type", kind: "enum", T: proto3.getEnumType(ArtifactType) }, + { no: 3, name: "mime", kind: "scalar", T: 9 /* ScalarType.STRING */ }, + { no: 4, name: "magic", kind: "scalar", T: 9 /* ScalarType.STRING */, opt: true }, + { no: 5, name: "binary", kind: "scalar", T: 12 /* ScalarType.BYTES */, oneof: "data" }, + { no: 6, name: "text", kind: "scalar", T: 9 /* ScalarType.STRING */, oneof: "data" }, + { no: 7, name: "tokens", kind: "message", T: Tokens, oneof: "data" }, + { no: 11, name: "classifier", kind: "message", T: ClassifierParameters, oneof: "data" }, + { no: 14, name: "tensor", kind: "message", T: Tensor, oneof: "data" }, + { no: 8, name: "index", kind: "scalar", T: 13 /* ScalarType.UINT32 */ }, + { no: 9, name: "finish_reason", kind: "enum", T: proto3.getEnumType(FinishReason) }, + { no: 10, name: "seed", kind: "scalar", T: 13 /* ScalarType.UINT32 */ }, + { no: 12, name: "uuid", kind: "scalar", T: 9 /* ScalarType.STRING */ }, + { no: 13, name: "size", kind: "scalar", T: 4 /* ScalarType.UINT64 */ }, + ], +); + +/** + * A set of parameters for each individual Prompt. + * + * @generated from message stabilityai.platformapis.generation.v1.PromptParameters + */ +export const PromptParameters = proto3.makeMessageType( + "stabilityai.platformapis.generation.v1.PromptParameters", + () => [ + { no: 1, name: "init", kind: "scalar", T: 8 /* ScalarType.BOOL */, opt: true }, + { no: 2, name: "weight", kind: "scalar", T: 2 /* ScalarType.FLOAT */, opt: true }, + ], +); + +/** + * A Prompt is a special type of Artifact that is used to generate an output. + * There can be multiple Prompts that affect the same output. Currently, the + * only Prompts supported are: + * - Text (singular) + * - Init Image (singular, optional, type ARTIFACT_IMAGE) + * - Mask (singular, optional, type ARTIFACT_MASK) + * - Depth (singular, optional, type ARTIFACT_DEPTH) + * + * @generated from message stabilityai.platformapis.generation.v1.Prompt + */ +export const Prompt = proto3.makeMessageType( + "stabilityai.platformapis.generation.v1.Prompt", + () => [ + { no: 1, name: "parameters", kind: "message", T: PromptParameters, opt: true }, + { no: 2, name: "text", kind: "scalar", T: 9 /* ScalarType.STRING */, oneof: "prompt" }, + { no: 3, name: "tokens", kind: "message", T: Tokens, oneof: "prompt" }, + { no: 4, name: "artifact", kind: "message", T: Artifact, oneof: "prompt" }, + ], +); + +/** + * Parameters that affect the behavior of the sampler, typically used for CFG. + * + * @generated from message stabilityai.platformapis.generation.v1.SamplerParameters + */ +export const SamplerParameters = proto3.makeMessageType( + "stabilityai.platformapis.generation.v1.SamplerParameters", + () => [ + { no: 1, name: "eta", kind: "scalar", T: 2 /* ScalarType.FLOAT */, opt: true }, + { no: 2, name: "sampling_steps", kind: "scalar", T: 4 /* ScalarType.UINT64 */, opt: true }, + { no: 3, name: "latent_channels", kind: "scalar", T: 4 /* ScalarType.UINT64 */, opt: true }, + { no: 4, name: "downsampling_factor", kind: "scalar", T: 4 /* ScalarType.UINT64 */, opt: true }, + { no: 5, name: "cfg_scale", kind: "scalar", T: 2 /* ScalarType.FLOAT */, opt: true }, + { no: 6, name: "init_noise_scale", kind: "scalar", T: 2 /* ScalarType.FLOAT */, opt: true }, + { no: 7, name: "step_noise_scale", kind: "scalar", T: 2 /* ScalarType.FLOAT */, opt: true }, + ], +); + +/** + * Unused, but reserved for future use. Adjustments to the latents after + * initialization. + * + * @generated from message stabilityai.platformapis.generation.v1.ConditionerParameters + */ +export const ConditionerParameters = proto3.makeMessageType( + "stabilityai.platformapis.generation.v1.ConditionerParameters", + () => [ + { no: 1, name: "vector_adjust_prior", kind: "scalar", T: 9 /* ScalarType.STRING */, opt: true }, + { no: 2, name: "conditioner", kind: "message", T: Model, opt: true }, + ], +); + +/** + * When does this schedule definition apply? + * + * @generated from message stabilityai.platformapis.generation.v1.ScheduleParameters + */ +export const ScheduleParameters = proto3.makeMessageType( + "stabilityai.platformapis.generation.v1.ScheduleParameters", + () => [ + { no: 1, name: "start", kind: "scalar", T: 2 /* ScalarType.FLOAT */, opt: true }, + { no: 2, name: "end", kind: "scalar", T: 2 /* ScalarType.FLOAT */, opt: true }, + { no: 3, name: "value", kind: "scalar", T: 2 /* ScalarType.FLOAT */, opt: true }, + ], +); + +/** + * Parameters that apply to this block of the schedule. + * + * @generated from message stabilityai.platformapis.generation.v1.StepParameter + */ +export const StepParameter = proto3.makeMessageType( + "stabilityai.platformapis.generation.v1.StepParameter", + () => [ + { no: 1, name: "scaled_step", kind: "scalar", T: 2 /* ScalarType.FLOAT */ }, + { no: 2, name: "sampler", kind: "message", T: SamplerParameters, opt: true }, + { no: 3, name: "schedule", kind: "message", T: ScheduleParameters, opt: true }, + { no: 4, name: "guidance", kind: "message", T: GuidanceParameters, opt: true }, + ], +); + +/** + * @generated from message stabilityai.platformapis.generation.v1.Model + */ +export const Model = proto3.makeMessageType( + "stabilityai.platformapis.generation.v1.Model", + () => [ + { no: 1, name: "architecture", kind: "enum", T: proto3.getEnumType(ModelArchitecture) }, + { no: 2, name: "publisher", kind: "scalar", T: 9 /* ScalarType.STRING */ }, + { no: 3, name: "dataset", kind: "scalar", T: 9 /* ScalarType.STRING */ }, + { no: 4, name: "version", kind: "scalar", T: 2 /* ScalarType.FLOAT */ }, + { no: 5, name: "semantic_version", kind: "scalar", T: 9 /* ScalarType.STRING */ }, + { no: 6, name: "alias", kind: "scalar", T: 9 /* ScalarType.STRING */ }, + ], +); + +/** + * @generated from message stabilityai.platformapis.generation.v1.CutoutParameters + */ +export const CutoutParameters = proto3.makeMessageType( + "stabilityai.platformapis.generation.v1.CutoutParameters", + () => [ + { no: 1, name: "cutouts", kind: "message", T: CutoutParameters, repeated: true }, + { no: 2, name: "count", kind: "scalar", T: 13 /* ScalarType.UINT32 */, opt: true }, + { no: 3, name: "gray", kind: "scalar", T: 2 /* ScalarType.FLOAT */, opt: true }, + { no: 4, name: "blur", kind: "scalar", T: 2 /* ScalarType.FLOAT */, opt: true }, + { no: 5, name: "size_power", kind: "scalar", T: 2 /* ScalarType.FLOAT */, opt: true }, + ], +); + +/** + * GuidanceScheduleParameters are used to define a schedule for CLIP guidance, and + * are used to define the behavior of the guidance over time. They are relative + * to the total number of steps, and are scaled to the number of steps in the + * current run. + * + * @generated from message stabilityai.platformapis.generation.v1.GuidanceScheduleParameters + */ +export const GuidanceScheduleParameters = proto3.makeMessageType( + "stabilityai.platformapis.generation.v1.GuidanceScheduleParameters", + () => [ + { no: 1, name: "duration", kind: "scalar", T: 2 /* ScalarType.FLOAT */ }, + { no: 2, name: "value", kind: "scalar", T: 2 /* ScalarType.FLOAT */ }, + ], +); + +/** + * Parameters that affect the behavior of the guidance, typically used for CLIP. + * We can specify more than one model, and the guidance will be a weighted sum + * of the models. + * + * @generated from message stabilityai.platformapis.generation.v1.GuidanceInstanceParameters + */ +export const GuidanceInstanceParameters = proto3.makeMessageType( + "stabilityai.platformapis.generation.v1.GuidanceInstanceParameters", + () => [ + { no: 2, name: "models", kind: "message", T: Model, repeated: true }, + { no: 3, name: "guidance_strength", kind: "scalar", T: 2 /* ScalarType.FLOAT */, opt: true }, + { no: 4, name: "schedule", kind: "message", T: GuidanceScheduleParameters, repeated: true }, + { no: 5, name: "cutouts", kind: "message", T: CutoutParameters, opt: true }, + { no: 6, name: "prompt", kind: "message", T: Prompt, opt: true }, + ], +); + +/** + * Parameters that affect the behavior of the guidance, typically used for CLIP. + * The omission of this field implies the default guidance of CFG. + * + * @generated from message stabilityai.platformapis.generation.v1.GuidanceParameters + */ +export const GuidanceParameters = proto3.makeMessageType( + "stabilityai.platformapis.generation.v1.GuidanceParameters", + () => [ + { no: 1, name: "guidance_preset", kind: "enum", T: proto3.getEnumType(GuidancePreset) }, + { no: 2, name: "instances", kind: "message", T: GuidanceInstanceParameters, repeated: true }, + ], +); + +/** + * @generated from message stabilityai.platformapis.generation.v1.TransformType + */ +export const TransformType = proto3.makeMessageType( + "stabilityai.platformapis.generation.v1.TransformType", + () => [ + { no: 1, name: "diffusion", kind: "enum", T: proto3.getEnumType(DiffusionSampler), oneof: "type" }, + { no: 2, name: "upscaler", kind: "enum", T: proto3.getEnumType(Upscaler), oneof: "type" }, + ], +); + +/** + * @generated from message stabilityai.platformapis.generation.v1.T2IAdapterParameter + */ +export const T2IAdapterParameter = proto3.makeMessageType( + "stabilityai.platformapis.generation.v1.T2IAdapterParameter", + () => [ + { no: 1, name: "adapter_type", kind: "enum", T: proto3.getEnumType(T2IAdapter) }, + { no: 2, name: "adapter_strength", kind: "scalar", T: 2 /* ScalarType.FLOAT */ }, + { no: 3, name: "adapter_init_type", kind: "enum", T: proto3.getEnumType(T2IAdapterInit) }, + ], +); + +/** + * @generated from message stabilityai.platformapis.generation.v1.ContentCredentialsParameters + */ +export const ContentCredentialsParameters = proto3.makeMessageType( + "stabilityai.platformapis.generation.v1.ContentCredentialsParameters", + () => [ + { no: 1, name: "model_metadata", kind: "enum", T: proto3.getEnumType(ContentCredentialsParameters_ModelMetadata), oneof: "parameters" }, + ], +); + +/** + * @generated from enum stabilityai.platformapis.generation.v1.ContentCredentialsParameters.ModelMetadata + */ +export const ContentCredentialsParameters_ModelMetadata = proto3.makeEnum( + "stabilityai.platformapis.generation.v1.ContentCredentialsParameters.ModelMetadata", + [ + {no: 0, name: "MODEL_METADATA_UNSPECIFIED", localName: "UNSPECIFIED"}, + {no: 1, name: "MODEL_METADATA_SIGN_WITH_ENGINE_ID", localName: "SIGN_WITH_ENGINE_ID"}, + ], +); + +/** + * FineTuningParameters specify which fine-tuned models to use for generation. + * + * @generated from message stabilityai.platformapis.generation.v1.FineTuningParameters + */ +export const FineTuningParameters = proto3.makeMessageType( + "stabilityai.platformapis.generation.v1.FineTuningParameters", + () => [ + { no: 1, name: "model_id", kind: "scalar", T: 9 /* ScalarType.STRING */ }, + { no: 2, name: "weight", kind: "scalar", T: 2 /* ScalarType.FLOAT */, opt: true }, + ], +); + +/** + * @generated from message stabilityai.platformapis.generation.v1.ImageParameters + */ +export const ImageParameters = proto3.makeMessageType( + "stabilityai.platformapis.generation.v1.ImageParameters", + () => [ + { no: 1, name: "height", kind: "scalar", T: 4 /* ScalarType.UINT64 */, opt: true }, + { no: 2, name: "width", kind: "scalar", T: 4 /* ScalarType.UINT64 */, opt: true }, + { no: 3, name: "seed", kind: "scalar", T: 13 /* ScalarType.UINT32 */, repeated: true }, + { no: 4, name: "samples", kind: "scalar", T: 4 /* ScalarType.UINT64 */, opt: true }, + { no: 5, name: "steps", kind: "scalar", T: 4 /* ScalarType.UINT64 */, opt: true }, + { no: 6, name: "transform", kind: "message", T: TransformType, opt: true }, + { no: 7, name: "parameters", kind: "message", T: StepParameter, repeated: true }, + { no: 8, name: "masked_area_init", kind: "enum", T: proto3.getEnumType(MaskedAreaInit), opt: true }, + { no: 9, name: "weight_method", kind: "enum", T: proto3.getEnumType(WeightMethod), opt: true }, + { no: 10, name: "quantize", kind: "scalar", T: 8 /* ScalarType.BOOL */, opt: true }, + { no: 12, name: "adapter", kind: "message", T: T2IAdapterParameter, opt: true }, + { no: 13, name: "fine_tuning_parameters", kind: "message", T: FineTuningParameters, repeated: true }, + { no: 14, name: "content_credentials_parameters", kind: "message", T: ContentCredentialsParameters, opt: true }, + ], +); + +/** + * @generated from message stabilityai.platformapis.generation.v1.ClassifierConcept + */ +export const ClassifierConcept = proto3.makeMessageType( + "stabilityai.platformapis.generation.v1.ClassifierConcept", + () => [ + { no: 1, name: "concept", kind: "scalar", T: 9 /* ScalarType.STRING */ }, + { no: 2, name: "threshold", kind: "scalar", T: 2 /* ScalarType.FLOAT */, opt: true }, + ], +); + +/** + * @generated from message stabilityai.platformapis.generation.v1.ClassifierCategory + */ +export const ClassifierCategory = proto3.makeMessageType( + "stabilityai.platformapis.generation.v1.ClassifierCategory", + () => [ + { no: 1, name: "name", kind: "scalar", T: 9 /* ScalarType.STRING */ }, + { no: 2, name: "concepts", kind: "message", T: ClassifierConcept, repeated: true }, + { no: 3, name: "adjustment", kind: "scalar", T: 2 /* ScalarType.FLOAT */, opt: true }, + { no: 4, name: "action", kind: "enum", T: proto3.getEnumType(Action), opt: true }, + { no: 5, name: "classifier_mode", kind: "enum", T: proto3.getEnumType(ClassifierMode), opt: true }, + ], +); + +/** + * @generated from message stabilityai.platformapis.generation.v1.ClassifierParameters + */ +export const ClassifierParameters = proto3.makeMessageType( + "stabilityai.platformapis.generation.v1.ClassifierParameters", + () => [ + { no: 1, name: "categories", kind: "message", T: ClassifierCategory, repeated: true }, + { no: 2, name: "exceeds", kind: "message", T: ClassifierCategory, repeated: true }, + { no: 3, name: "realized_action", kind: "enum", T: proto3.getEnumType(Action), opt: true }, + ], +); + +/** + * Interpolation between two images applied at specified blend ratios + * + * @generated from message stabilityai.platformapis.generation.v1.InterpolateParameters + */ +export const InterpolateParameters = proto3.makeMessageType( + "stabilityai.platformapis.generation.v1.InterpolateParameters", + () => [ + { no: 1, name: "ratios", kind: "scalar", T: 2 /* ScalarType.FLOAT */, repeated: true }, + { no: 2, name: "mode", kind: "enum", T: proto3.getEnumType(InterpolateMode), opt: true }, + ], +); + +/** + * @generated from message stabilityai.platformapis.generation.v1.TransformColorAdjust + */ +export const TransformColorAdjust = proto3.makeMessageType( + "stabilityai.platformapis.generation.v1.TransformColorAdjust", + () => [ + { no: 1, name: "brightness", kind: "scalar", T: 2 /* ScalarType.FLOAT */, opt: true }, + { no: 2, name: "contrast", kind: "scalar", T: 2 /* ScalarType.FLOAT */, opt: true }, + { no: 3, name: "hue", kind: "scalar", T: 2 /* ScalarType.FLOAT */, opt: true }, + { no: 4, name: "saturation", kind: "scalar", T: 2 /* ScalarType.FLOAT */, opt: true }, + { no: 5, name: "lightness", kind: "scalar", T: 2 /* ScalarType.FLOAT */, opt: true }, + { no: 6, name: "match_image", kind: "message", T: Artifact, opt: true }, + { no: 7, name: "match_mode", kind: "enum", T: proto3.getEnumType(ColorMatchMode), opt: true }, + { no: 8, name: "noise_amount", kind: "scalar", T: 2 /* ScalarType.FLOAT */, opt: true }, + { no: 9, name: "noise_seed", kind: "scalar", T: 13 /* ScalarType.UINT32 */, opt: true }, + ], +); + +/** + * @generated from message stabilityai.platformapis.generation.v1.TransformDepthCalc + */ +export const TransformDepthCalc = proto3.makeMessageType( + "stabilityai.platformapis.generation.v1.TransformDepthCalc", + () => [ + { no: 1, name: "blend_weight", kind: "scalar", T: 2 /* ScalarType.FLOAT */, opt: true }, + { no: 2, name: "blur_radius", kind: "scalar", T: 13 /* ScalarType.UINT32 */, opt: true }, + { no: 3, name: "reverse", kind: "scalar", T: 8 /* ScalarType.BOOL */, opt: true }, + ], +); + +/** + * @generated from message stabilityai.platformapis.generation.v1.TransformMatrix + */ +export const TransformMatrix = proto3.makeMessageType( + "stabilityai.platformapis.generation.v1.TransformMatrix", + () => [ + { no: 1, name: "data", kind: "scalar", T: 2 /* ScalarType.FLOAT */, repeated: true }, + ], +); + +/** + * @generated from message stabilityai.platformapis.generation.v1.TransformResample + */ +export const TransformResample = proto3.makeMessageType( + "stabilityai.platformapis.generation.v1.TransformResample", + () => [ + { no: 1, name: "border_mode", kind: "enum", T: proto3.getEnumType(BorderMode) }, + { no: 2, name: "transform", kind: "message", T: TransformMatrix }, + { no: 3, name: "prev_transform", kind: "message", T: TransformMatrix, opt: true }, + { no: 4, name: "depth_warp", kind: "scalar", T: 2 /* ScalarType.FLOAT */, opt: true }, + { no: 5, name: "export_mask", kind: "scalar", T: 8 /* ScalarType.BOOL */, opt: true }, + ], +); + +/** + * @generated from message stabilityai.platformapis.generation.v1.CameraParameters + */ +export const CameraParameters = proto3.makeMessageType( + "stabilityai.platformapis.generation.v1.CameraParameters", + () => [ + { no: 1, name: "camera_type", kind: "enum", T: proto3.getEnumType(CameraType) }, + { no: 2, name: "near_plane", kind: "scalar", T: 2 /* ScalarType.FLOAT */ }, + { no: 3, name: "far_plane", kind: "scalar", T: 2 /* ScalarType.FLOAT */ }, + { no: 4, name: "fov", kind: "scalar", T: 2 /* ScalarType.FLOAT */, opt: true }, + ], +); + +/** + * @generated from message stabilityai.platformapis.generation.v1.TransformCameraPose + */ +export const TransformCameraPose = proto3.makeMessageType( + "stabilityai.platformapis.generation.v1.TransformCameraPose", + () => [ + { no: 1, name: "world_to_view_matrix", kind: "message", T: TransformMatrix }, + { no: 2, name: "camera_parameters", kind: "message", T: CameraParameters }, + { no: 5, name: "do_prefill", kind: "scalar", T: 8 /* ScalarType.BOOL */ }, + { no: 8, name: "render_mode", kind: "enum", T: proto3.getEnumType(RenderMode) }, + ], +); + +/** + * @generated from message stabilityai.platformapis.generation.v1.TransformParameters + */ +export const TransformParameters = proto3.makeMessageType( + "stabilityai.platformapis.generation.v1.TransformParameters", + () => [ + { no: 2, name: "color_adjust", kind: "message", T: TransformColorAdjust, oneof: "transform" }, + { no: 4, name: "depth_calc", kind: "message", T: TransformDepthCalc, oneof: "transform" }, + { no: 5, name: "resample", kind: "message", T: TransformResample, oneof: "transform" }, + { no: 6, name: "camera_pose", kind: "message", T: TransformCameraPose, oneof: "transform" }, + ], +); + +/** + * @generated from message stabilityai.platformapis.generation.v1.AssetParameters + */ +export const AssetParameters = proto3.makeMessageType( + "stabilityai.platformapis.generation.v1.AssetParameters", + () => [ + { no: 1, name: "action", kind: "enum", T: proto3.getEnumType(AssetAction) }, + { no: 2, name: "project_id", kind: "scalar", T: 9 /* ScalarType.STRING */ }, + { no: 3, name: "use", kind: "enum", T: proto3.getEnumType(AssetUse) }, + ], +); + +/** + * AnswerMeta is a set of metadata about an answer, usually the operating + * environment. + * + * @generated from message stabilityai.platformapis.generation.v1.AnswerMeta + */ +export const AnswerMeta = proto3.makeMessageType( + "stabilityai.platformapis.generation.v1.AnswerMeta", + () => [ + { no: 1, name: "gpu_id", kind: "scalar", T: 9 /* ScalarType.STRING */, opt: true }, + { no: 2, name: "cpu_id", kind: "scalar", T: 9 /* ScalarType.STRING */, opt: true }, + { no: 3, name: "node_id", kind: "scalar", T: 9 /* ScalarType.STRING */, opt: true }, + { no: 4, name: "engine_id", kind: "scalar", T: 9 /* ScalarType.STRING */, opt: true }, + ], +); + +/** + * An Answer is a response to a Request. It is a set of Artifacts, which can be + * of any type and forwarded to the client or the next stage. + * + * @generated from message stabilityai.platformapis.generation.v1.Answer + */ +export const Answer = proto3.makeMessageType( + "stabilityai.platformapis.generation.v1.Answer", + () => [ + { no: 1, name: "answer_id", kind: "scalar", T: 9 /* ScalarType.STRING */ }, + { no: 2, name: "request_id", kind: "scalar", T: 9 /* ScalarType.STRING */ }, + { no: 3, name: "received", kind: "scalar", T: 4 /* ScalarType.UINT64 */ }, + { no: 4, name: "created", kind: "scalar", T: 4 /* ScalarType.UINT64 */ }, + { no: 6, name: "meta", kind: "message", T: AnswerMeta, opt: true }, + { no: 7, name: "artifacts", kind: "message", T: Artifact, repeated: true }, + ], +); + +/** + * An AnswerBatch is a set of Answers. It can represent one or several completed + * requests, which may be sent to the client in a single response. + * + * @generated from message stabilityai.platformapis.generation.v1.AnswerBatch + */ +export const AnswerBatch = proto3.makeMessageType( + "stabilityai.platformapis.generation.v1.AnswerBatch", + () => [ + { no: 1, name: "batch_id", kind: "scalar", T: 9 /* ScalarType.STRING */ }, + { no: 2, name: "answers", kind: "message", T: Answer, repeated: true }, + ], +); + +/** + * A Request is a set of Artifacts, which can be of any type with model or + * transform parameters. It is sent to the server, which will respond with an + * Answer. + * + * @generated from message stabilityai.platformapis.generation.v1.Request + */ +export const Request = proto3.makeMessageType( + "stabilityai.platformapis.generation.v1.Request", + () => [ + { no: 1, name: "engine_id", kind: "scalar", T: 9 /* ScalarType.STRING */ }, + { no: 2, name: "request_id", kind: "scalar", T: 9 /* ScalarType.STRING */ }, + { no: 3, name: "requested_type", kind: "enum", T: proto3.getEnumType(ArtifactType) }, + { no: 4, name: "prompt", kind: "message", T: Prompt, repeated: true }, + { no: 5, name: "image", kind: "message", T: ImageParameters, oneof: "params" }, + { no: 7, name: "classifier", kind: "message", T: ClassifierParameters, oneof: "params" }, + { no: 8, name: "asset", kind: "message", T: AssetParameters, oneof: "params" }, + { no: 11, name: "interpolate", kind: "message", T: InterpolateParameters, oneof: "params" }, + { no: 12, name: "transform", kind: "message", T: TransformParameters, oneof: "params" }, + { no: 6, name: "conditioner", kind: "message", T: ConditionerParameters, opt: true }, + { no: 2047, name: "extras", kind: "message", T: Struct, opt: true }, + ], +); + +/** + * @generated from message stabilityai.platformapis.generation.v1.OnStatus + */ +export const OnStatus = proto3.makeMessageType( + "stabilityai.platformapis.generation.v1.OnStatus", + () => [ + { no: 1, name: "reason", kind: "enum", T: proto3.getEnumType(FinishReason), repeated: true }, + { no: 2, name: "target", kind: "scalar", T: 9 /* ScalarType.STRING */, opt: true }, + { no: 3, name: "action", kind: "enum", T: proto3.getEnumType(StageAction), repeated: true }, + ], +); + +/** + * @generated from message stabilityai.platformapis.generation.v1.Stage + */ +export const Stage = proto3.makeMessageType( + "stabilityai.platformapis.generation.v1.Stage", + () => [ + { no: 1, name: "id", kind: "scalar", T: 9 /* ScalarType.STRING */ }, + { no: 2, name: "request", kind: "message", T: Request }, + { no: 3, name: "on_status", kind: "message", T: OnStatus, repeated: true }, + ], +); + +/** + * @generated from message stabilityai.platformapis.generation.v1.ChainRequest + */ +export const ChainRequest = proto3.makeMessageType( + "stabilityai.platformapis.generation.v1.ChainRequest", + () => [ + { no: 1, name: "request_id", kind: "scalar", T: 9 /* ScalarType.STRING */ }, + { no: 2, name: "stage", kind: "message", T: Stage, repeated: true }, + ], +); + diff --git a/src/stability_api/platform/generation/v1/generation_pb2.py b/src/stability_api/platform/generation/v1/generation_pb2.py new file mode 100644 index 0000000..a9aaf23 --- /dev/null +++ b/src/stability_api/platform/generation/v1/generation_pb2.py @@ -0,0 +1,149 @@ +# -*- coding: utf-8 -*- +# Generated by the protocol buffer compiler. DO NOT EDIT! +# source: stability_api/platform/generation/v1/generation.proto +"""Generated protocol buffer code.""" +from google.protobuf import descriptor as _descriptor +from google.protobuf import descriptor_pool as _descriptor_pool +from google.protobuf import symbol_database as _symbol_database +from google.protobuf.internal import builder as _builder +# @@protoc_insertion_point(imports) + +_sym_db = _symbol_database.Default() + + +from google.protobuf import struct_pb2 as google_dot_protobuf_dot_struct__pb2 +from stability_api.tensors import tensors_pb2 as stability__api_dot_tensors_dot_tensors__pb2 + + +DESCRIPTOR = _descriptor_pool.Default().AddSerializedFile(b'\n5stability_api/platform/generation/v1/generation.proto\x12&stabilityai.platformapis.generation.v1\x1a\x1cgoogle/protobuf/struct.proto\x1a#stability_api/tensors/tensors.proto\"9\n\x05Token\x12\x17\n\x04text\x18\x01 \x01(\tH\x00R\x04text\x88\x01\x01\x12\x0e\n\x02id\x18\x02 \x01(\rR\x02idB\x07\n\x05_text\"\x88\x01\n\x06Tokens\x12\x45\n\x06tokens\x18\x01 \x03(\x0b\x32-.stabilityai.platformapis.generation.v1.TokenR\x06tokens\x12&\n\x0ctokenizer_id\x18\x02 \x01(\tH\x00R\x0btokenizerId\x88\x01\x01\x42\x0f\n\r_tokenizer_id\"\xd7\x04\n\x08\x41rtifact\x12\x0e\n\x02id\x18\x01 \x01(\x04R\x02id\x12H\n\x04type\x18\x02 \x01(\x0e\x32\x34.stabilityai.platformapis.generation.v1.ArtifactTypeR\x04type\x12\x12\n\x04mime\x18\x03 \x01(\tR\x04mime\x12\x19\n\x05magic\x18\x04 \x01(\tH\x01R\x05magic\x88\x01\x01\x12\x18\n\x06\x62inary\x18\x05 \x01(\x0cH\x00R\x06\x62inary\x12\x14\n\x04text\x18\x06 \x01(\tH\x00R\x04text\x12H\n\x06tokens\x18\x07 \x01(\x0b\x32..stabilityai.platformapis.generation.v1.TokensH\x00R\x06tokens\x12^\n\nclassifier\x18\x0b \x01(\x0b\x32<.stabilityai.platformapis.generation.v1.ClassifierParametersH\x00R\nclassifier\x12)\n\x06tensor\x18\x0e \x01(\x0b\x32\x0f.tensors.TensorH\x00R\x06tensor\x12\x14\n\x05index\x18\x08 \x01(\rR\x05index\x12Y\n\rfinish_reason\x18\t \x01(\x0e\x32\x34.stabilityai.platformapis.generation.v1.FinishReasonR\x0c\x66inishReason\x12\x12\n\x04seed\x18\n \x01(\rR\x04seed\x12\x12\n\x04uuid\x18\x0c \x01(\tR\x04uuid\x12\x12\n\x04size\x18\r \x01(\x04R\x04sizeB\x06\n\x04\x64\x61taB\x08\n\x06_magic\"\\\n\x10PromptParameters\x12\x17\n\x04init\x18\x01 \x01(\x08H\x00R\x04init\x88\x01\x01\x12\x1b\n\x06weight\x18\x02 \x01(\x02H\x01R\x06weight\x88\x01\x01\x42\x07\n\x05_initB\t\n\x07_weight\"\xb0\x02\n\x06Prompt\x12]\n\nparameters\x18\x01 \x01(\x0b\x32\x38.stabilityai.platformapis.generation.v1.PromptParametersH\x01R\nparameters\x88\x01\x01\x12\x14\n\x04text\x18\x02 \x01(\tH\x00R\x04text\x12H\n\x06tokens\x18\x03 \x01(\x0b\x32..stabilityai.platformapis.generation.v1.TokensH\x00R\x06tokens\x12N\n\x08\x61rtifact\x18\x04 \x01(\x0b\x32\x30.stabilityai.platformapis.generation.v1.ArtifactH\x00R\x08\x61rtifactB\x08\n\x06promptB\r\n\x0b_parameters\"\xb9\x03\n\x11SamplerParameters\x12\x15\n\x03\x65ta\x18\x01 \x01(\x02H\x00R\x03\x65ta\x88\x01\x01\x12*\n\x0esampling_steps\x18\x02 \x01(\x04H\x01R\rsamplingSteps\x88\x01\x01\x12,\n\x0flatent_channels\x18\x03 \x01(\x04H\x02R\x0elatentChannels\x88\x01\x01\x12\x34\n\x13\x64ownsampling_factor\x18\x04 \x01(\x04H\x03R\x12\x64ownsamplingFactor\x88\x01\x01\x12 \n\tcfg_scale\x18\x05 \x01(\x02H\x04R\x08\x63\x66gScale\x88\x01\x01\x12-\n\x10init_noise_scale\x18\x06 \x01(\x02H\x05R\x0einitNoiseScale\x88\x01\x01\x12-\n\x10step_noise_scale\x18\x07 \x01(\x02H\x06R\x0estepNoiseScale\x88\x01\x01\x42\x06\n\x04_etaB\x11\n\x0f_sampling_stepsB\x12\n\x10_latent_channelsB\x16\n\x14_downsampling_factorB\x0c\n\n_cfg_scaleB\x13\n\x11_init_noise_scaleB\x13\n\x11_step_noise_scale\"\xca\x01\n\x15\x43onditionerParameters\x12\x33\n\x13vector_adjust_prior\x18\x01 \x01(\tH\x00R\x11vectorAdjustPrior\x88\x01\x01\x12T\n\x0b\x63onditioner\x18\x02 \x01(\x0b\x32-.stabilityai.platformapis.generation.v1.ModelH\x01R\x0b\x63onditioner\x88\x01\x01\x42\x16\n\x14_vector_adjust_priorB\x0e\n\x0c_conditioner\"}\n\x12ScheduleParameters\x12\x19\n\x05start\x18\x01 \x01(\x02H\x00R\x05start\x88\x01\x01\x12\x15\n\x03\x65nd\x18\x02 \x01(\x02H\x01R\x03\x65nd\x88\x01\x01\x12\x19\n\x05value\x18\x03 \x01(\x02H\x02R\x05value\x88\x01\x01\x42\x08\n\x06_startB\x06\n\x04_endB\x08\n\x06_value\"\xea\x02\n\rStepParameter\x12\x1f\n\x0bscaled_step\x18\x01 \x01(\x02R\nscaledStep\x12X\n\x07sampler\x18\x02 \x01(\x0b\x32\x39.stabilityai.platformapis.generation.v1.SamplerParametersH\x00R\x07sampler\x88\x01\x01\x12[\n\x08schedule\x18\x03 \x01(\x0b\x32:.stabilityai.platformapis.generation.v1.ScheduleParametersH\x01R\x08schedule\x88\x01\x01\x12[\n\x08guidance\x18\x04 \x01(\x0b\x32:.stabilityai.platformapis.generation.v1.GuidanceParametersH\x02R\x08guidance\x88\x01\x01\x42\n\n\x08_samplerB\x0b\n\t_scheduleB\x0b\n\t_guidance\"\xf9\x01\n\x05Model\x12]\n\x0c\x61rchitecture\x18\x01 \x01(\x0e\x32\x39.stabilityai.platformapis.generation.v1.ModelArchitectureR\x0c\x61rchitecture\x12\x1c\n\tpublisher\x18\x02 \x01(\tR\tpublisher\x12\x18\n\x07\x64\x61taset\x18\x03 \x01(\tR\x07\x64\x61taset\x12\x18\n\x07version\x18\x04 \x01(\x02R\x07version\x12)\n\x10semantic_version\x18\x05 \x01(\tR\x0fsemanticVersion\x12\x14\n\x05\x61lias\x18\x06 \x01(\tR\x05\x61lias\"\x82\x02\n\x10\x43utoutParameters\x12R\n\x07\x63utouts\x18\x01 \x03(\x0b\x32\x38.stabilityai.platformapis.generation.v1.CutoutParametersR\x07\x63utouts\x12\x19\n\x05\x63ount\x18\x02 \x01(\rH\x00R\x05\x63ount\x88\x01\x01\x12\x17\n\x04gray\x18\x03 \x01(\x02H\x01R\x04gray\x88\x01\x01\x12\x17\n\x04\x62lur\x18\x04 \x01(\x02H\x02R\x04\x62lur\x88\x01\x01\x12\"\n\nsize_power\x18\x05 \x01(\x02H\x03R\tsizePower\x88\x01\x01\x42\x08\n\x06_countB\x07\n\x05_grayB\x07\n\x05_blurB\r\n\x0b_size_power\"N\n\x1aGuidanceScheduleParameters\x12\x1a\n\x08\x64uration\x18\x01 \x01(\x02R\x08\x64uration\x12\x14\n\x05value\x18\x02 \x01(\x02R\x05value\"\xc8\x03\n\x1aGuidanceInstanceParameters\x12\x45\n\x06models\x18\x02 \x03(\x0b\x32-.stabilityai.platformapis.generation.v1.ModelR\x06models\x12\x30\n\x11guidance_strength\x18\x03 \x01(\x02H\x00R\x10guidanceStrength\x88\x01\x01\x12^\n\x08schedule\x18\x04 \x03(\x0b\x32\x42.stabilityai.platformapis.generation.v1.GuidanceScheduleParametersR\x08schedule\x12W\n\x07\x63utouts\x18\x05 \x01(\x0b\x32\x38.stabilityai.platformapis.generation.v1.CutoutParametersH\x01R\x07\x63utouts\x88\x01\x01\x12K\n\x06prompt\x18\x06 \x01(\x0b\x32..stabilityai.platformapis.generation.v1.PromptH\x02R\x06prompt\x88\x01\x01\x42\x14\n\x12_guidance_strengthB\n\n\x08_cutoutsB\t\n\x07_prompt\"\xd7\x01\n\x12GuidanceParameters\x12_\n\x0fguidance_preset\x18\x01 \x01(\x0e\x32\x36.stabilityai.platformapis.generation.v1.GuidancePresetR\x0eguidancePreset\x12`\n\tinstances\x18\x02 \x03(\x0b\x32\x42.stabilityai.platformapis.generation.v1.GuidanceInstanceParametersR\tinstances\"\xc1\x01\n\rTransformType\x12X\n\tdiffusion\x18\x01 \x01(\x0e\x32\x38.stabilityai.platformapis.generation.v1.DiffusionSamplerH\x00R\tdiffusion\x12N\n\x08upscaler\x18\x02 \x01(\x0e\x32\x30.stabilityai.platformapis.generation.v1.UpscalerH\x00R\x08upscalerB\x06\n\x04type\"\xfb\x01\n\x13T2IAdapterParameter\x12U\n\x0c\x61\x64\x61pter_type\x18\x01 \x01(\x0e\x32\x32.stabilityai.platformapis.generation.v1.T2IAdapterR\x0b\x61\x64\x61pterType\x12)\n\x10\x61\x64\x61pter_strength\x18\x02 \x01(\x02R\x0f\x61\x64\x61pterStrength\x12\x62\n\x11\x61\x64\x61pter_init_type\x18\x03 \x01(\x0e\x32\x36.stabilityai.platformapis.generation.v1.T2IAdapterInitR\x0f\x61\x64\x61pterInitType\"\x82\x02\n\x1c\x43ontentCredentialsParameters\x12{\n\x0emodel_metadata\x18\x01 \x01(\x0e\x32R.stabilityai.platformapis.generation.v1.ContentCredentialsParameters.ModelMetadataH\x00R\rmodelMetadata\"W\n\rModelMetadata\x12\x1e\n\x1aMODEL_METADATA_UNSPECIFIED\x10\x00\x12&\n\"MODEL_METADATA_SIGN_WITH_ENGINE_ID\x10\x01\x42\x0c\n\nparameters\"Y\n\x14\x46ineTuningParameters\x12\x19\n\x08model_id\x18\x01 \x01(\tR\x07modelId\x12\x1b\n\x06weight\x18\x02 \x01(\x02H\x00R\x06weight\x88\x01\x01\x42\t\n\x07_weight\"\xb4\x08\n\x0fImageParameters\x12\x1b\n\x06height\x18\x01 \x01(\x04H\x00R\x06height\x88\x01\x01\x12\x19\n\x05width\x18\x02 \x01(\x04H\x01R\x05width\x88\x01\x01\x12\x12\n\x04seed\x18\x03 \x03(\rR\x04seed\x12\x1d\n\x07samples\x18\x04 \x01(\x04H\x02R\x07samples\x88\x01\x01\x12\x19\n\x05steps\x18\x05 \x01(\x04H\x03R\x05steps\x88\x01\x01\x12X\n\ttransform\x18\x06 \x01(\x0b\x32\x35.stabilityai.platformapis.generation.v1.TransformTypeH\x04R\ttransform\x88\x01\x01\x12U\n\nparameters\x18\x07 \x03(\x0b\x32\x35.stabilityai.platformapis.generation.v1.StepParameterR\nparameters\x12\x65\n\x10masked_area_init\x18\x08 \x01(\x0e\x32\x36.stabilityai.platformapis.generation.v1.MaskedAreaInitH\x05R\x0emaskedAreaInit\x88\x01\x01\x12^\n\rweight_method\x18\t \x01(\x0e\x32\x34.stabilityai.platformapis.generation.v1.WeightMethodH\x06R\x0cweightMethod\x88\x01\x01\x12\x1f\n\x08quantize\x18\n \x01(\x08H\x07R\x08quantize\x88\x01\x01\x12Z\n\x07\x61\x64\x61pter\x18\x0c \x01(\x0b\x32;.stabilityai.platformapis.generation.v1.T2IAdapterParameterH\x08R\x07\x61\x64\x61pter\x88\x01\x01\x12r\n\x16\x66ine_tuning_parameters\x18\r \x03(\x0b\x32<.stabilityai.platformapis.generation.v1.FineTuningParametersR\x14\x66ineTuningParameters\x12\x8f\x01\n\x1e\x63ontent_credentials_parameters\x18\x0e \x01(\x0b\x32\x44.stabilityai.platformapis.generation.v1.ContentCredentialsParametersH\tR\x1c\x63ontentCredentialsParameters\x88\x01\x01\x42\t\n\x07_heightB\x08\n\x06_widthB\n\n\x08_samplesB\x08\n\x06_stepsB\x0c\n\n_transformB\x13\n\x11_masked_area_initB\x10\n\x0e_weight_methodB\x0b\n\t_quantizeB\n\n\x08_adapterB!\n\x1f_content_credentials_parametersJ\x04\x08\x0b\x10\x0c\"^\n\x11\x43lassifierConcept\x12\x18\n\x07\x63oncept\x18\x01 \x01(\tR\x07\x63oncept\x12!\n\tthreshold\x18\x02 \x01(\x02H\x00R\tthreshold\x88\x01\x01\x42\x0c\n\n_threshold\"\x85\x03\n\x12\x43lassifierCategory\x12\x12\n\x04name\x18\x01 \x01(\tR\x04name\x12U\n\x08\x63oncepts\x18\x02 \x03(\x0b\x32\x39.stabilityai.platformapis.generation.v1.ClassifierConceptR\x08\x63oncepts\x12#\n\nadjustment\x18\x03 \x01(\x02H\x00R\nadjustment\x88\x01\x01\x12K\n\x06\x61\x63tion\x18\x04 \x01(\x0e\x32..stabilityai.platformapis.generation.v1.ActionH\x01R\x06\x61\x63tion\x88\x01\x01\x12\x64\n\x0f\x63lassifier_mode\x18\x05 \x01(\x0e\x32\x36.stabilityai.platformapis.generation.v1.ClassifierModeH\x02R\x0e\x63lassifierMode\x88\x01\x01\x42\r\n\x0b_adjustmentB\t\n\x07_actionB\x12\n\x10_classifier_mode\"\xba\x02\n\x14\x43lassifierParameters\x12Z\n\ncategories\x18\x01 \x03(\x0b\x32:.stabilityai.platformapis.generation.v1.ClassifierCategoryR\ncategories\x12T\n\x07\x65xceeds\x18\x02 \x03(\x0b\x32:.stabilityai.platformapis.generation.v1.ClassifierCategoryR\x07\x65xceeds\x12\\\n\x0frealized_action\x18\x03 \x01(\x0e\x32..stabilityai.platformapis.generation.v1.ActionH\x00R\x0erealizedAction\x88\x01\x01\x42\x12\n\x10_realized_action\"\x8a\x01\n\x15InterpolateParameters\x12\x16\n\x06ratios\x18\x01 \x03(\x02R\x06ratios\x12P\n\x04mode\x18\x02 \x01(\x0e\x32\x37.stabilityai.platformapis.generation.v1.InterpolateModeH\x00R\x04mode\x88\x01\x01\x42\x07\n\x05_mode\"\xbb\x04\n\x14TransformColorAdjust\x12#\n\nbrightness\x18\x01 \x01(\x02H\x00R\nbrightness\x88\x01\x01\x12\x1f\n\x08\x63ontrast\x18\x02 \x01(\x02H\x01R\x08\x63ontrast\x88\x01\x01\x12\x15\n\x03hue\x18\x03 \x01(\x02H\x02R\x03hue\x88\x01\x01\x12#\n\nsaturation\x18\x04 \x01(\x02H\x03R\nsaturation\x88\x01\x01\x12!\n\tlightness\x18\x05 \x01(\x02H\x04R\tlightness\x88\x01\x01\x12V\n\x0bmatch_image\x18\x06 \x01(\x0b\x32\x30.stabilityai.platformapis.generation.v1.ArtifactH\x05R\nmatchImage\x88\x01\x01\x12Z\n\nmatch_mode\x18\x07 \x01(\x0e\x32\x36.stabilityai.platformapis.generation.v1.ColorMatchModeH\x06R\tmatchMode\x88\x01\x01\x12&\n\x0cnoise_amount\x18\x08 \x01(\x02H\x07R\x0bnoiseAmount\x88\x01\x01\x12\"\n\nnoise_seed\x18\t \x01(\rH\x08R\tnoiseSeed\x88\x01\x01\x42\r\n\x0b_brightnessB\x0b\n\t_contrastB\x06\n\x04_hueB\r\n\x0b_saturationB\x0c\n\n_lightnessB\x0e\n\x0c_match_imageB\r\n\x0b_match_modeB\x0f\n\r_noise_amountB\r\n\x0b_noise_seed\"\xae\x01\n\x12TransformDepthCalc\x12&\n\x0c\x62lend_weight\x18\x01 \x01(\x02H\x00R\x0b\x62lendWeight\x88\x01\x01\x12$\n\x0b\x62lur_radius\x18\x02 \x01(\rH\x01R\nblurRadius\x88\x01\x01\x12\x1d\n\x07reverse\x18\x03 \x01(\x08H\x02R\x07reverse\x88\x01\x01\x42\x0f\n\r_blend_weightB\x0e\n\x0c_blur_radiusB\n\n\x08_reverse\")\n\x0fTransformMatrix\x12\x16\n\x04\x64\x61ta\x18\x01 \x03(\x02\x42\x02\x10\x01R\x04\x64\x61ta\"\xa0\x03\n\x11TransformResample\x12S\n\x0b\x62order_mode\x18\x01 \x01(\x0e\x32\x32.stabilityai.platformapis.generation.v1.BorderModeR\nborderMode\x12U\n\ttransform\x18\x02 \x01(\x0b\x32\x37.stabilityai.platformapis.generation.v1.TransformMatrixR\ttransform\x12\x63\n\x0eprev_transform\x18\x03 \x01(\x0b\x32\x37.stabilityai.platformapis.generation.v1.TransformMatrixH\x00R\rprevTransform\x88\x01\x01\x12\"\n\ndepth_warp\x18\x04 \x01(\x02H\x01R\tdepthWarp\x88\x01\x01\x12$\n\x0b\x65xport_mask\x18\x05 \x01(\x08H\x02R\nexportMask\x88\x01\x01\x42\x11\n\x0f_prev_transformB\r\n\x0b_depth_warpB\x0e\n\x0c_export_mask\"\xc2\x01\n\x10\x43\x61meraParameters\x12S\n\x0b\x63\x61mera_type\x18\x01 \x01(\x0e\x32\x32.stabilityai.platformapis.generation.v1.CameraTypeR\ncameraType\x12\x1d\n\nnear_plane\x18\x02 \x01(\x02R\tnearPlane\x12\x1b\n\tfar_plane\x18\x03 \x01(\x02R\x08\x66\x61rPlane\x12\x15\n\x03\x66ov\x18\x04 \x01(\x02H\x00R\x03\x66ov\x88\x01\x01\x42\x06\n\x04_fov\"\xf2\x02\n\x13TransformCameraPose\x12h\n\x14world_to_view_matrix\x18\x01 \x01(\x0b\x32\x37.stabilityai.platformapis.generation.v1.TransformMatrixR\x11worldToViewMatrix\x12\x65\n\x11\x63\x61mera_parameters\x18\x02 \x01(\x0b\x32\x38.stabilityai.platformapis.generation.v1.CameraParametersR\x10\x63\x61meraParameters\x12\x1d\n\ndo_prefill\x18\x05 \x01(\x08R\tdoPrefill\x12S\n\x0brender_mode\x18\x08 \x01(\x0e\x32\x32.stabilityai.platformapis.generation.v1.RenderModeR\nrenderModeJ\x04\x08\x03\x10\x04J\x04\x08\x04\x10\x05J\x04\x08\x06\x10\x07J\x04\x08\x07\x10\x08\"\x9b\x03\n\x13TransformParameters\x12\x61\n\x0c\x63olor_adjust\x18\x02 \x01(\x0b\x32<.stabilityai.platformapis.generation.v1.TransformColorAdjustH\x00R\x0b\x63olorAdjust\x12[\n\ndepth_calc\x18\x04 \x01(\x0b\x32:.stabilityai.platformapis.generation.v1.TransformDepthCalcH\x00R\tdepthCalc\x12W\n\x08resample\x18\x05 \x01(\x0b\x32\x39.stabilityai.platformapis.generation.v1.TransformResampleH\x00R\x08resample\x12^\n\x0b\x63\x61mera_pose\x18\x06 \x01(\x0b\x32;.stabilityai.platformapis.generation.v1.TransformCameraPoseH\x00R\ncameraPoseB\x0b\n\ttransform\"\xc1\x01\n\x0f\x41ssetParameters\x12K\n\x06\x61\x63tion\x18\x01 \x01(\x0e\x32\x33.stabilityai.platformapis.generation.v1.AssetActionR\x06\x61\x63tion\x12\x1d\n\nproject_id\x18\x02 \x01(\tR\tprojectId\x12\x42\n\x03use\x18\x03 \x01(\x0e\x32\x30.stabilityai.platformapis.generation.v1.AssetUseR\x03use\"\xb4\x01\n\nAnswerMeta\x12\x1a\n\x06gpu_id\x18\x01 \x01(\tH\x00R\x05gpuId\x88\x01\x01\x12\x1a\n\x06\x63pu_id\x18\x02 \x01(\tH\x01R\x05\x63puId\x88\x01\x01\x12\x1c\n\x07node_id\x18\x03 \x01(\tH\x02R\x06nodeId\x88\x01\x01\x12 \n\tengine_id\x18\x04 \x01(\tH\x03R\x08\x65ngineId\x88\x01\x01\x42\t\n\x07_gpu_idB\t\n\x07_cpu_idB\n\n\x08_node_idB\x0c\n\n_engine_id\"\xa0\x02\n\x06\x41nswer\x12\x1b\n\tanswer_id\x18\x01 \x01(\tR\x08\x61nswerId\x12\x1d\n\nrequest_id\x18\x02 \x01(\tR\trequestId\x12\x1a\n\x08received\x18\x03 \x01(\x04R\x08received\x12\x18\n\x07\x63reated\x18\x04 \x01(\x04R\x07\x63reated\x12K\n\x04meta\x18\x06 \x01(\x0b\x32\x32.stabilityai.platformapis.generation.v1.AnswerMetaH\x00R\x04meta\x88\x01\x01\x12N\n\tartifacts\x18\x07 \x03(\x0b\x32\x30.stabilityai.platformapis.generation.v1.ArtifactR\tartifactsB\x07\n\x05_meta\"r\n\x0b\x41nswerBatch\x12\x19\n\x08\x62\x61tch_id\x18\x01 \x01(\tR\x07\x62\x61tchId\x12H\n\x07\x61nswers\x18\x02 \x03(\x0b\x32..stabilityai.platformapis.generation.v1.AnswerR\x07\x61nswers\"\xfa\x06\n\x07Request\x12\x1b\n\tengine_id\x18\x01 \x01(\tR\x08\x65ngineId\x12\x1d\n\nrequest_id\x18\x02 \x01(\tR\trequestId\x12[\n\x0erequested_type\x18\x03 \x01(\x0e\x32\x34.stabilityai.platformapis.generation.v1.ArtifactTypeR\rrequestedType\x12\x46\n\x06prompt\x18\x04 \x03(\x0b\x32..stabilityai.platformapis.generation.v1.PromptR\x06prompt\x12O\n\x05image\x18\x05 \x01(\x0b\x32\x37.stabilityai.platformapis.generation.v1.ImageParametersH\x00R\x05image\x12^\n\nclassifier\x18\x07 \x01(\x0b\x32<.stabilityai.platformapis.generation.v1.ClassifierParametersH\x00R\nclassifier\x12O\n\x05\x61sset\x18\x08 \x01(\x0b\x32\x37.stabilityai.platformapis.generation.v1.AssetParametersH\x00R\x05\x61sset\x12\x61\n\x0binterpolate\x18\x0b \x01(\x0b\x32=.stabilityai.platformapis.generation.v1.InterpolateParametersH\x00R\x0binterpolate\x12[\n\ttransform\x18\x0c \x01(\x0b\x32;.stabilityai.platformapis.generation.v1.TransformParametersH\x00R\ttransform\x12\x64\n\x0b\x63onditioner\x18\x06 \x01(\x0b\x32=.stabilityai.platformapis.generation.v1.ConditionerParametersH\x01R\x0b\x63onditioner\x88\x01\x01\x12\x35\n\x06\x65xtras\x18\xff\x0f \x01(\x0b\x32\x17.google.protobuf.StructH\x02R\x06\x65xtras\x88\x01\x01\x42\x08\n\x06paramsB\x0e\n\x0c_conditionerB\t\n\x07_extrasJ\x04\x08\t\x10\nJ\x04\x08\n\x10\x0b\"\xcd\x01\n\x08OnStatus\x12L\n\x06reason\x18\x01 \x03(\x0e\x32\x34.stabilityai.platformapis.generation.v1.FinishReasonR\x06reason\x12\x1b\n\x06target\x18\x02 \x01(\tH\x00R\x06target\x88\x01\x01\x12K\n\x06\x61\x63tion\x18\x03 \x03(\x0e\x32\x33.stabilityai.platformapis.generation.v1.StageActionR\x06\x61\x63tionB\t\n\x07_target\"\xb1\x01\n\x05Stage\x12\x0e\n\x02id\x18\x01 \x01(\tR\x02id\x12I\n\x07request\x18\x02 \x01(\x0b\x32/.stabilityai.platformapis.generation.v1.RequestR\x07request\x12M\n\ton_status\x18\x03 \x03(\x0b\x32\x30.stabilityai.platformapis.generation.v1.OnStatusR\x08onStatus\"r\n\x0c\x43hainRequest\x12\x1d\n\nrequest_id\x18\x01 \x01(\tR\trequestId\x12\x43\n\x05stage\x18\x02 \x03(\x0b\x32-.stabilityai.platformapis.generation.v1.StageR\x05stage*E\n\x0c\x46inishReason\x12\x08\n\x04NULL\x10\x00\x12\n\n\x06LENGTH\x10\x01\x12\x08\n\x04STOP\x10\x02\x12\t\n\x05\x45RROR\x10\x03\x12\n\n\x06\x46ILTER\x10\x04*\xf8\x01\n\x0c\x41rtifactType\x12\x11\n\rARTIFACT_NONE\x10\x00\x12\x12\n\x0e\x41RTIFACT_IMAGE\x10\x01\x12\x12\n\x0e\x41RTIFACT_VIDEO\x10\x02\x12\x11\n\rARTIFACT_TEXT\x10\x03\x12\x13\n\x0f\x41RTIFACT_TOKENS\x10\x04\x12\x16\n\x12\x41RTIFACT_EMBEDDING\x10\x05\x12\x1c\n\x18\x41RTIFACT_CLASSIFICATIONS\x10\x06\x12\x11\n\rARTIFACT_MASK\x10\x07\x12\x13\n\x0f\x41RTIFACT_LATENT\x10\x08\x12\x13\n\x0f\x41RTIFACT_TENSOR\x10\t\x12\x12\n\x0e\x41RTIFACT_DEPTH\x10\n*g\n\x0eMaskedAreaInit\x12\x19\n\x15MASKED_AREA_INIT_ZERO\x10\x00\x12\x1b\n\x17MASKED_AREA_INIT_RANDOM\x10\x01\x12\x1d\n\x19MASKED_AREA_INIT_ORIGINAL\x10\x02*5\n\x0cWeightMethod\x12\x10\n\x0cTEXT_ENCODER\x10\x00\x12\x13\n\x0f\x43ROSS_ATTENTION\x10\x01*\x98\x02\n\x10\x44iffusionSampler\x12\x10\n\x0cSAMPLER_DDIM\x10\x00\x12\x10\n\x0cSAMPLER_DDPM\x10\x01\x12\x13\n\x0fSAMPLER_K_EULER\x10\x02\x12\x1d\n\x19SAMPLER_K_EULER_ANCESTRAL\x10\x03\x12\x12\n\x0eSAMPLER_K_HEUN\x10\x04\x12\x13\n\x0fSAMPLER_K_DPM_2\x10\x05\x12\x1d\n\x19SAMPLER_K_DPM_2_ANCESTRAL\x10\x06\x12\x11\n\rSAMPLER_K_LMS\x10\x07\x12 \n\x1cSAMPLER_K_DPMPP_2S_ANCESTRAL\x10\x08\x12\x16\n\x12SAMPLER_K_DPMPP_2M\x10\t\x12\x17\n\x13SAMPLER_K_DPMPP_SDE\x10\n*F\n\x08Upscaler\x12\x10\n\x0cUPSCALER_RGB\x10\x00\x12\x13\n\x0fUPSCALER_GFPGAN\x10\x01\x12\x13\n\x0fUPSCALER_ESRGAN\x10\x02*\xd8\x01\n\x0eGuidancePreset\x12\x18\n\x14GUIDANCE_PRESET_NONE\x10\x00\x12\x1a\n\x16GUIDANCE_PRESET_SIMPLE\x10\x01\x12\x1d\n\x19GUIDANCE_PRESET_FAST_BLUE\x10\x02\x12\x1e\n\x1aGUIDANCE_PRESET_FAST_GREEN\x10\x03\x12\x18\n\x14GUIDANCE_PRESET_SLOW\x10\x04\x12\x1a\n\x16GUIDANCE_PRESET_SLOWER\x10\x05\x12\x1b\n\x17GUIDANCE_PRESET_SLOWEST\x10\x06*\x91\x01\n\x11ModelArchitecture\x12\x1b\n\x17MODEL_ARCHITECTURE_NONE\x10\x00\x12\x1f\n\x1bMODEL_ARCHITECTURE_CLIP_VIT\x10\x01\x12\"\n\x1eMODEL_ARCHITECTURE_CLIP_RESNET\x10\x02\x12\x1a\n\x16MODEL_ARCHITECTURE_LDM\x10\x03*d\n\nT2IAdapter\x12\x13\n\x0fT2IADAPTER_NONE\x10\x00\x12\x15\n\x11T2IADAPTER_SKETCH\x10\x01\x12\x14\n\x10T2IADAPTER_DEPTH\x10\x02\x12\x14\n\x10T2IADAPTER_CANNY\x10\x03*L\n\x0eT2IAdapterInit\x12\x18\n\x14T2IADAPTERINIT_IMAGE\x10\x00\x12 \n\x1cT2IADAPTERINIT_ADAPTER_IMAGE\x10\x01*\xa2\x01\n\x06\x41\x63tion\x12\x16\n\x12\x41\x43TION_PASSTHROUGH\x10\x00\x12\x1f\n\x1b\x41\x43TION_REGENERATE_DUPLICATE\x10\x01\x12\x15\n\x11\x41\x43TION_REGENERATE\x10\x02\x12\x1e\n\x1a\x41\x43TION_OBFUSCATE_DUPLICATE\x10\x03\x12\x14\n\x10\x41\x43TION_OBFUSCATE\x10\x04\x12\x12\n\x0e\x41\x43TION_DISCARD\x10\x05*D\n\x0e\x43lassifierMode\x12\x17\n\x13\x43LSFR_MODE_ZEROSHOT\x10\x00\x12\x19\n\x15\x43LSFR_MODE_MULTICLASS\x10\x01*\x8c\x01\n\x0fInterpolateMode\x12\x16\n\x12INTERPOLATE_LINEAR\x10\x00\x12\x14\n\x10INTERPOLATE_RIFE\x10\x01\x12\x1a\n\x16INTERPOLATE_VAE_LINEAR\x10\x02\x12\x19\n\x15INTERPOLATE_VAE_SLERP\x10\x03\x12\x14\n\x10INTERPOLATE_FILM\x10\x04*l\n\nBorderMode\x12\x12\n\x0e\x42ORDER_REFLECT\x10\x00\x12\x14\n\x10\x42ORDER_REPLICATE\x10\x01\x12\x0f\n\x0b\x42ORDER_WRAP\x10\x02\x12\x0f\n\x0b\x42ORDER_ZERO\x10\x03\x12\x12\n\x0e\x42ORDER_PREFILL\x10\x04*O\n\x0e\x43olorMatchMode\x12\x13\n\x0f\x43OLOR_MATCH_HSV\x10\x00\x12\x13\n\x0f\x43OLOR_MATCH_LAB\x10\x01\x12\x13\n\x0f\x43OLOR_MATCH_RGB\x10\x02*=\n\nCameraType\x12\x16\n\x12\x43\x41MERA_PERSPECTIVE\x10\x00\x12\x17\n\x13\x43\x41MERA_ORTHOGRAPHIC\x10\x01*4\n\nRenderMode\x12\x0f\n\x0bRENDER_MESH\x10\x00\x12\x15\n\x11RENDER_POINTCLOUD\x10\x01*=\n\x0b\x41ssetAction\x12\r\n\tASSET_PUT\x10\x00\x12\r\n\tASSET_GET\x10\x01\x12\x10\n\x0c\x41SSET_DELETE\x10\x02*\x81\x01\n\x08\x41ssetUse\x12\x17\n\x13\x41SSET_USE_UNDEFINED\x10\x00\x12\x13\n\x0f\x41SSET_USE_INPUT\x10\x01\x12\x14\n\x10\x41SSET_USE_OUTPUT\x10\x02\x12\x1a\n\x16\x41SSET_USE_INTERMEDIATE\x10\x03\x12\x15\n\x11\x41SSET_USE_PROJECT\x10\x04*W\n\x0bStageAction\x12\x15\n\x11STAGE_ACTION_PASS\x10\x00\x12\x18\n\x14STAGE_ACTION_DISCARD\x10\x01\x12\x17\n\x13STAGE_ACTION_RETURN\x10\x02\x32\xff\x01\n\x11GenerationService\x12o\n\x08Generate\x12/.stabilityai.platformapis.generation.v1.Request\x1a..stabilityai.platformapis.generation.v1.Answer\"\x00\x30\x01\x12y\n\rChainGenerate\x12\x34.stabilityai.platformapis.generation.v1.ChainRequest\x1a..stabilityai.platformapis.generation.v1.Answer\"\x00\x30\x01\x42\xdf\x02\n*com.stabilityai.platformapis.generation.v1B\x0fGenerationProtoP\x01Zegithub.com/stability-ai/api-interfaces/gen/proto/go/stability_api/platform/generation/v1;generationv1\xa2\x02\x03SPG\xaa\x02&Stabilityai.Platformapis.Generation.V1\xca\x02&Stabilityai\\Platformapis\\Generation\\V1\xe2\x02\x32Stabilityai\\Platformapis\\Generation\\V1\\GPBMetadata\xea\x02)Stabilityai::Platformapis::Generation::V1b\x06proto3') + +_globals = globals() +_builder.BuildMessageAndEnumDescriptors(DESCRIPTOR, _globals) +_builder.BuildTopDescriptorsAndMessages(DESCRIPTOR, 'stability_api.platform.generation.v1.generation_pb2', _globals) +if _descriptor._USE_C_DESCRIPTORS == False: + + DESCRIPTOR._options = None + DESCRIPTOR._serialized_options = b'\n*com.stabilityai.platformapis.generation.v1B\017GenerationProtoP\001Zegithub.com/stability-ai/api-interfaces/gen/proto/go/stability_api/platform/generation/v1;generationv1\242\002\003SPG\252\002&Stabilityai.Platformapis.Generation.V1\312\002&Stabilityai\\Platformapis\\Generation\\V1\342\0022Stabilityai\\Platformapis\\Generation\\V1\\GPBMetadata\352\002)Stabilityai::Platformapis::Generation::V1' + _TRANSFORMMATRIX.fields_by_name['data']._options = None + _TRANSFORMMATRIX.fields_by_name['data']._serialized_options = b'\020\001' + _globals['_FINISHREASON']._serialized_start=10983 + _globals['_FINISHREASON']._serialized_end=11052 + _globals['_ARTIFACTTYPE']._serialized_start=11055 + _globals['_ARTIFACTTYPE']._serialized_end=11303 + _globals['_MASKEDAREAINIT']._serialized_start=11305 + _globals['_MASKEDAREAINIT']._serialized_end=11408 + _globals['_WEIGHTMETHOD']._serialized_start=11410 + _globals['_WEIGHTMETHOD']._serialized_end=11463 + _globals['_DIFFUSIONSAMPLER']._serialized_start=11466 + _globals['_DIFFUSIONSAMPLER']._serialized_end=11746 + _globals['_UPSCALER']._serialized_start=11748 + _globals['_UPSCALER']._serialized_end=11818 + _globals['_GUIDANCEPRESET']._serialized_start=11821 + _globals['_GUIDANCEPRESET']._serialized_end=12037 + _globals['_MODELARCHITECTURE']._serialized_start=12040 + _globals['_MODELARCHITECTURE']._serialized_end=12185 + _globals['_T2IADAPTER']._serialized_start=12187 + _globals['_T2IADAPTER']._serialized_end=12287 + _globals['_T2IADAPTERINIT']._serialized_start=12289 + _globals['_T2IADAPTERINIT']._serialized_end=12365 + _globals['_ACTION']._serialized_start=12368 + _globals['_ACTION']._serialized_end=12530 + _globals['_CLASSIFIERMODE']._serialized_start=12532 + _globals['_CLASSIFIERMODE']._serialized_end=12600 + _globals['_INTERPOLATEMODE']._serialized_start=12603 + _globals['_INTERPOLATEMODE']._serialized_end=12743 + _globals['_BORDERMODE']._serialized_start=12745 + _globals['_BORDERMODE']._serialized_end=12853 + _globals['_COLORMATCHMODE']._serialized_start=12855 + _globals['_COLORMATCHMODE']._serialized_end=12934 + _globals['_CAMERATYPE']._serialized_start=12936 + _globals['_CAMERATYPE']._serialized_end=12997 + _globals['_RENDERMODE']._serialized_start=12999 + _globals['_RENDERMODE']._serialized_end=13051 + _globals['_ASSETACTION']._serialized_start=13053 + _globals['_ASSETACTION']._serialized_end=13114 + _globals['_ASSETUSE']._serialized_start=13117 + _globals['_ASSETUSE']._serialized_end=13246 + _globals['_STAGEACTION']._serialized_start=13248 + _globals['_STAGEACTION']._serialized_end=13335 + _globals['_TOKEN']._serialized_start=164 + _globals['_TOKEN']._serialized_end=221 + _globals['_TOKENS']._serialized_start=224 + _globals['_TOKENS']._serialized_end=360 + _globals['_ARTIFACT']._serialized_start=363 + _globals['_ARTIFACT']._serialized_end=962 + _globals['_PROMPTPARAMETERS']._serialized_start=964 + _globals['_PROMPTPARAMETERS']._serialized_end=1056 + _globals['_PROMPT']._serialized_start=1059 + _globals['_PROMPT']._serialized_end=1363 + _globals['_SAMPLERPARAMETERS']._serialized_start=1366 + _globals['_SAMPLERPARAMETERS']._serialized_end=1807 + _globals['_CONDITIONERPARAMETERS']._serialized_start=1810 + _globals['_CONDITIONERPARAMETERS']._serialized_end=2012 + _globals['_SCHEDULEPARAMETERS']._serialized_start=2014 + _globals['_SCHEDULEPARAMETERS']._serialized_end=2139 + _globals['_STEPPARAMETER']._serialized_start=2142 + _globals['_STEPPARAMETER']._serialized_end=2504 + _globals['_MODEL']._serialized_start=2507 + _globals['_MODEL']._serialized_end=2756 + _globals['_CUTOUTPARAMETERS']._serialized_start=2759 + _globals['_CUTOUTPARAMETERS']._serialized_end=3017 + _globals['_GUIDANCESCHEDULEPARAMETERS']._serialized_start=3019 + _globals['_GUIDANCESCHEDULEPARAMETERS']._serialized_end=3097 + _globals['_GUIDANCEINSTANCEPARAMETERS']._serialized_start=3100 + _globals['_GUIDANCEINSTANCEPARAMETERS']._serialized_end=3556 + _globals['_GUIDANCEPARAMETERS']._serialized_start=3559 + _globals['_GUIDANCEPARAMETERS']._serialized_end=3774 + _globals['_TRANSFORMTYPE']._serialized_start=3777 + _globals['_TRANSFORMTYPE']._serialized_end=3970 + _globals['_T2IADAPTERPARAMETER']._serialized_start=3973 + _globals['_T2IADAPTERPARAMETER']._serialized_end=4224 + _globals['_CONTENTCREDENTIALSPARAMETERS']._serialized_start=4227 + _globals['_CONTENTCREDENTIALSPARAMETERS']._serialized_end=4485 + _globals['_CONTENTCREDENTIALSPARAMETERS_MODELMETADATA']._serialized_start=4384 + _globals['_CONTENTCREDENTIALSPARAMETERS_MODELMETADATA']._serialized_end=4471 + _globals['_FINETUNINGPARAMETERS']._serialized_start=4487 + _globals['_FINETUNINGPARAMETERS']._serialized_end=4576 + _globals['_IMAGEPARAMETERS']._serialized_start=4579 + _globals['_IMAGEPARAMETERS']._serialized_end=5655 + _globals['_CLASSIFIERCONCEPT']._serialized_start=5657 + _globals['_CLASSIFIERCONCEPT']._serialized_end=5751 + _globals['_CLASSIFIERCATEGORY']._serialized_start=5754 + _globals['_CLASSIFIERCATEGORY']._serialized_end=6143 + _globals['_CLASSIFIERPARAMETERS']._serialized_start=6146 + _globals['_CLASSIFIERPARAMETERS']._serialized_end=6460 + _globals['_INTERPOLATEPARAMETERS']._serialized_start=6463 + _globals['_INTERPOLATEPARAMETERS']._serialized_end=6601 + _globals['_TRANSFORMCOLORADJUST']._serialized_start=6604 + _globals['_TRANSFORMCOLORADJUST']._serialized_end=7175 + _globals['_TRANSFORMDEPTHCALC']._serialized_start=7178 + _globals['_TRANSFORMDEPTHCALC']._serialized_end=7352 + _globals['_TRANSFORMMATRIX']._serialized_start=7354 + _globals['_TRANSFORMMATRIX']._serialized_end=7395 + _globals['_TRANSFORMRESAMPLE']._serialized_start=7398 + _globals['_TRANSFORMRESAMPLE']._serialized_end=7814 + _globals['_CAMERAPARAMETERS']._serialized_start=7817 + _globals['_CAMERAPARAMETERS']._serialized_end=8011 + _globals['_TRANSFORMCAMERAPOSE']._serialized_start=8014 + _globals['_TRANSFORMCAMERAPOSE']._serialized_end=8384 + _globals['_TRANSFORMPARAMETERS']._serialized_start=8387 + _globals['_TRANSFORMPARAMETERS']._serialized_end=8798 + _globals['_ASSETPARAMETERS']._serialized_start=8801 + _globals['_ASSETPARAMETERS']._serialized_end=8994 + _globals['_ANSWERMETA']._serialized_start=8997 + _globals['_ANSWERMETA']._serialized_end=9177 + _globals['_ANSWER']._serialized_start=9180 + _globals['_ANSWER']._serialized_end=9468 + _globals['_ANSWERBATCH']._serialized_start=9470 + _globals['_ANSWERBATCH']._serialized_end=9584 + _globals['_REQUEST']._serialized_start=9587 + _globals['_REQUEST']._serialized_end=10477 + _globals['_ONSTATUS']._serialized_start=10480 + _globals['_ONSTATUS']._serialized_end=10685 + _globals['_STAGE']._serialized_start=10688 + _globals['_STAGE']._serialized_end=10865 + _globals['_CHAINREQUEST']._serialized_start=10867 + _globals['_CHAINREQUEST']._serialized_end=10981 + _globals['_GENERATIONSERVICE']._serialized_start=13338 + _globals['_GENERATIONSERVICE']._serialized_end=13593 +# @@protoc_insertion_point(module_scope) diff --git a/src/stability_api/platform/generation/v1/generation_pb2.pyi b/src/stability_api/platform/generation/v1/generation_pb2.pyi new file mode 100644 index 0000000..9a00773 --- /dev/null +++ b/src/stability_api/platform/generation/v1/generation_pb2.pyi @@ -0,0 +1,717 @@ +from google.protobuf import struct_pb2 as _struct_pb2 +from stability_api.tensors import tensors_pb2 as _tensors_pb2 +from google.protobuf.internal import containers as _containers +from google.protobuf.internal import enum_type_wrapper as _enum_type_wrapper +from google.protobuf import descriptor as _descriptor +from google.protobuf import message as _message +from typing import ClassVar as _ClassVar, Iterable as _Iterable, Mapping as _Mapping, Optional as _Optional, Union as _Union + +DESCRIPTOR: _descriptor.FileDescriptor + +class FinishReason(int, metaclass=_enum_type_wrapper.EnumTypeWrapper): + __slots__ = [] + NULL: _ClassVar[FinishReason] + LENGTH: _ClassVar[FinishReason] + STOP: _ClassVar[FinishReason] + ERROR: _ClassVar[FinishReason] + FILTER: _ClassVar[FinishReason] + +class ArtifactType(int, metaclass=_enum_type_wrapper.EnumTypeWrapper): + __slots__ = [] + ARTIFACT_NONE: _ClassVar[ArtifactType] + ARTIFACT_IMAGE: _ClassVar[ArtifactType] + ARTIFACT_VIDEO: _ClassVar[ArtifactType] + ARTIFACT_TEXT: _ClassVar[ArtifactType] + ARTIFACT_TOKENS: _ClassVar[ArtifactType] + ARTIFACT_EMBEDDING: _ClassVar[ArtifactType] + ARTIFACT_CLASSIFICATIONS: _ClassVar[ArtifactType] + ARTIFACT_MASK: _ClassVar[ArtifactType] + ARTIFACT_LATENT: _ClassVar[ArtifactType] + ARTIFACT_TENSOR: _ClassVar[ArtifactType] + ARTIFACT_DEPTH: _ClassVar[ArtifactType] + +class MaskedAreaInit(int, metaclass=_enum_type_wrapper.EnumTypeWrapper): + __slots__ = [] + MASKED_AREA_INIT_ZERO: _ClassVar[MaskedAreaInit] + MASKED_AREA_INIT_RANDOM: _ClassVar[MaskedAreaInit] + MASKED_AREA_INIT_ORIGINAL: _ClassVar[MaskedAreaInit] + +class WeightMethod(int, metaclass=_enum_type_wrapper.EnumTypeWrapper): + __slots__ = [] + TEXT_ENCODER: _ClassVar[WeightMethod] + CROSS_ATTENTION: _ClassVar[WeightMethod] + +class DiffusionSampler(int, metaclass=_enum_type_wrapper.EnumTypeWrapper): + __slots__ = [] + SAMPLER_DDIM: _ClassVar[DiffusionSampler] + SAMPLER_DDPM: _ClassVar[DiffusionSampler] + SAMPLER_K_EULER: _ClassVar[DiffusionSampler] + SAMPLER_K_EULER_ANCESTRAL: _ClassVar[DiffusionSampler] + SAMPLER_K_HEUN: _ClassVar[DiffusionSampler] + SAMPLER_K_DPM_2: _ClassVar[DiffusionSampler] + SAMPLER_K_DPM_2_ANCESTRAL: _ClassVar[DiffusionSampler] + SAMPLER_K_LMS: _ClassVar[DiffusionSampler] + SAMPLER_K_DPMPP_2S_ANCESTRAL: _ClassVar[DiffusionSampler] + SAMPLER_K_DPMPP_2M: _ClassVar[DiffusionSampler] + SAMPLER_K_DPMPP_SDE: _ClassVar[DiffusionSampler] + +class Upscaler(int, metaclass=_enum_type_wrapper.EnumTypeWrapper): + __slots__ = [] + UPSCALER_RGB: _ClassVar[Upscaler] + UPSCALER_GFPGAN: _ClassVar[Upscaler] + UPSCALER_ESRGAN: _ClassVar[Upscaler] + +class GuidancePreset(int, metaclass=_enum_type_wrapper.EnumTypeWrapper): + __slots__ = [] + GUIDANCE_PRESET_NONE: _ClassVar[GuidancePreset] + GUIDANCE_PRESET_SIMPLE: _ClassVar[GuidancePreset] + GUIDANCE_PRESET_FAST_BLUE: _ClassVar[GuidancePreset] + GUIDANCE_PRESET_FAST_GREEN: _ClassVar[GuidancePreset] + GUIDANCE_PRESET_SLOW: _ClassVar[GuidancePreset] + GUIDANCE_PRESET_SLOWER: _ClassVar[GuidancePreset] + GUIDANCE_PRESET_SLOWEST: _ClassVar[GuidancePreset] + +class ModelArchitecture(int, metaclass=_enum_type_wrapper.EnumTypeWrapper): + __slots__ = [] + MODEL_ARCHITECTURE_NONE: _ClassVar[ModelArchitecture] + MODEL_ARCHITECTURE_CLIP_VIT: _ClassVar[ModelArchitecture] + MODEL_ARCHITECTURE_CLIP_RESNET: _ClassVar[ModelArchitecture] + MODEL_ARCHITECTURE_LDM: _ClassVar[ModelArchitecture] + +class T2IAdapter(int, metaclass=_enum_type_wrapper.EnumTypeWrapper): + __slots__ = [] + T2IADAPTER_NONE: _ClassVar[T2IAdapter] + T2IADAPTER_SKETCH: _ClassVar[T2IAdapter] + T2IADAPTER_DEPTH: _ClassVar[T2IAdapter] + T2IADAPTER_CANNY: _ClassVar[T2IAdapter] + +class T2IAdapterInit(int, metaclass=_enum_type_wrapper.EnumTypeWrapper): + __slots__ = [] + T2IADAPTERINIT_IMAGE: _ClassVar[T2IAdapterInit] + T2IADAPTERINIT_ADAPTER_IMAGE: _ClassVar[T2IAdapterInit] + +class Action(int, metaclass=_enum_type_wrapper.EnumTypeWrapper): + __slots__ = [] + ACTION_PASSTHROUGH: _ClassVar[Action] + ACTION_REGENERATE_DUPLICATE: _ClassVar[Action] + ACTION_REGENERATE: _ClassVar[Action] + ACTION_OBFUSCATE_DUPLICATE: _ClassVar[Action] + ACTION_OBFUSCATE: _ClassVar[Action] + ACTION_DISCARD: _ClassVar[Action] + +class ClassifierMode(int, metaclass=_enum_type_wrapper.EnumTypeWrapper): + __slots__ = [] + CLSFR_MODE_ZEROSHOT: _ClassVar[ClassifierMode] + CLSFR_MODE_MULTICLASS: _ClassVar[ClassifierMode] + +class InterpolateMode(int, metaclass=_enum_type_wrapper.EnumTypeWrapper): + __slots__ = [] + INTERPOLATE_LINEAR: _ClassVar[InterpolateMode] + INTERPOLATE_RIFE: _ClassVar[InterpolateMode] + INTERPOLATE_VAE_LINEAR: _ClassVar[InterpolateMode] + INTERPOLATE_VAE_SLERP: _ClassVar[InterpolateMode] + INTERPOLATE_FILM: _ClassVar[InterpolateMode] + +class BorderMode(int, metaclass=_enum_type_wrapper.EnumTypeWrapper): + __slots__ = [] + BORDER_REFLECT: _ClassVar[BorderMode] + BORDER_REPLICATE: _ClassVar[BorderMode] + BORDER_WRAP: _ClassVar[BorderMode] + BORDER_ZERO: _ClassVar[BorderMode] + BORDER_PREFILL: _ClassVar[BorderMode] + +class ColorMatchMode(int, metaclass=_enum_type_wrapper.EnumTypeWrapper): + __slots__ = [] + COLOR_MATCH_HSV: _ClassVar[ColorMatchMode] + COLOR_MATCH_LAB: _ClassVar[ColorMatchMode] + COLOR_MATCH_RGB: _ClassVar[ColorMatchMode] + +class CameraType(int, metaclass=_enum_type_wrapper.EnumTypeWrapper): + __slots__ = [] + CAMERA_PERSPECTIVE: _ClassVar[CameraType] + CAMERA_ORTHOGRAPHIC: _ClassVar[CameraType] + +class RenderMode(int, metaclass=_enum_type_wrapper.EnumTypeWrapper): + __slots__ = [] + RENDER_MESH: _ClassVar[RenderMode] + RENDER_POINTCLOUD: _ClassVar[RenderMode] + +class AssetAction(int, metaclass=_enum_type_wrapper.EnumTypeWrapper): + __slots__ = [] + ASSET_PUT: _ClassVar[AssetAction] + ASSET_GET: _ClassVar[AssetAction] + ASSET_DELETE: _ClassVar[AssetAction] + +class AssetUse(int, metaclass=_enum_type_wrapper.EnumTypeWrapper): + __slots__ = [] + ASSET_USE_UNDEFINED: _ClassVar[AssetUse] + ASSET_USE_INPUT: _ClassVar[AssetUse] + ASSET_USE_OUTPUT: _ClassVar[AssetUse] + ASSET_USE_INTERMEDIATE: _ClassVar[AssetUse] + ASSET_USE_PROJECT: _ClassVar[AssetUse] + +class StageAction(int, metaclass=_enum_type_wrapper.EnumTypeWrapper): + __slots__ = [] + STAGE_ACTION_PASS: _ClassVar[StageAction] + STAGE_ACTION_DISCARD: _ClassVar[StageAction] + STAGE_ACTION_RETURN: _ClassVar[StageAction] +NULL: FinishReason +LENGTH: FinishReason +STOP: FinishReason +ERROR: FinishReason +FILTER: FinishReason +ARTIFACT_NONE: ArtifactType +ARTIFACT_IMAGE: ArtifactType +ARTIFACT_VIDEO: ArtifactType +ARTIFACT_TEXT: ArtifactType +ARTIFACT_TOKENS: ArtifactType +ARTIFACT_EMBEDDING: ArtifactType +ARTIFACT_CLASSIFICATIONS: ArtifactType +ARTIFACT_MASK: ArtifactType +ARTIFACT_LATENT: ArtifactType +ARTIFACT_TENSOR: ArtifactType +ARTIFACT_DEPTH: ArtifactType +MASKED_AREA_INIT_ZERO: MaskedAreaInit +MASKED_AREA_INIT_RANDOM: MaskedAreaInit +MASKED_AREA_INIT_ORIGINAL: MaskedAreaInit +TEXT_ENCODER: WeightMethod +CROSS_ATTENTION: WeightMethod +SAMPLER_DDIM: DiffusionSampler +SAMPLER_DDPM: DiffusionSampler +SAMPLER_K_EULER: DiffusionSampler +SAMPLER_K_EULER_ANCESTRAL: DiffusionSampler +SAMPLER_K_HEUN: DiffusionSampler +SAMPLER_K_DPM_2: DiffusionSampler +SAMPLER_K_DPM_2_ANCESTRAL: DiffusionSampler +SAMPLER_K_LMS: DiffusionSampler +SAMPLER_K_DPMPP_2S_ANCESTRAL: DiffusionSampler +SAMPLER_K_DPMPP_2M: DiffusionSampler +SAMPLER_K_DPMPP_SDE: DiffusionSampler +UPSCALER_RGB: Upscaler +UPSCALER_GFPGAN: Upscaler +UPSCALER_ESRGAN: Upscaler +GUIDANCE_PRESET_NONE: GuidancePreset +GUIDANCE_PRESET_SIMPLE: GuidancePreset +GUIDANCE_PRESET_FAST_BLUE: GuidancePreset +GUIDANCE_PRESET_FAST_GREEN: GuidancePreset +GUIDANCE_PRESET_SLOW: GuidancePreset +GUIDANCE_PRESET_SLOWER: GuidancePreset +GUIDANCE_PRESET_SLOWEST: GuidancePreset +MODEL_ARCHITECTURE_NONE: ModelArchitecture +MODEL_ARCHITECTURE_CLIP_VIT: ModelArchitecture +MODEL_ARCHITECTURE_CLIP_RESNET: ModelArchitecture +MODEL_ARCHITECTURE_LDM: ModelArchitecture +T2IADAPTER_NONE: T2IAdapter +T2IADAPTER_SKETCH: T2IAdapter +T2IADAPTER_DEPTH: T2IAdapter +T2IADAPTER_CANNY: T2IAdapter +T2IADAPTERINIT_IMAGE: T2IAdapterInit +T2IADAPTERINIT_ADAPTER_IMAGE: T2IAdapterInit +ACTION_PASSTHROUGH: Action +ACTION_REGENERATE_DUPLICATE: Action +ACTION_REGENERATE: Action +ACTION_OBFUSCATE_DUPLICATE: Action +ACTION_OBFUSCATE: Action +ACTION_DISCARD: Action +CLSFR_MODE_ZEROSHOT: ClassifierMode +CLSFR_MODE_MULTICLASS: ClassifierMode +INTERPOLATE_LINEAR: InterpolateMode +INTERPOLATE_RIFE: InterpolateMode +INTERPOLATE_VAE_LINEAR: InterpolateMode +INTERPOLATE_VAE_SLERP: InterpolateMode +INTERPOLATE_FILM: InterpolateMode +BORDER_REFLECT: BorderMode +BORDER_REPLICATE: BorderMode +BORDER_WRAP: BorderMode +BORDER_ZERO: BorderMode +BORDER_PREFILL: BorderMode +COLOR_MATCH_HSV: ColorMatchMode +COLOR_MATCH_LAB: ColorMatchMode +COLOR_MATCH_RGB: ColorMatchMode +CAMERA_PERSPECTIVE: CameraType +CAMERA_ORTHOGRAPHIC: CameraType +RENDER_MESH: RenderMode +RENDER_POINTCLOUD: RenderMode +ASSET_PUT: AssetAction +ASSET_GET: AssetAction +ASSET_DELETE: AssetAction +ASSET_USE_UNDEFINED: AssetUse +ASSET_USE_INPUT: AssetUse +ASSET_USE_OUTPUT: AssetUse +ASSET_USE_INTERMEDIATE: AssetUse +ASSET_USE_PROJECT: AssetUse +STAGE_ACTION_PASS: StageAction +STAGE_ACTION_DISCARD: StageAction +STAGE_ACTION_RETURN: StageAction + +class Token(_message.Message): + __slots__ = ["text", "id"] + TEXT_FIELD_NUMBER: _ClassVar[int] + ID_FIELD_NUMBER: _ClassVar[int] + text: str + id: int + def __init__(self, text: _Optional[str] = ..., id: _Optional[int] = ...) -> None: ... + +class Tokens(_message.Message): + __slots__ = ["tokens", "tokenizer_id"] + TOKENS_FIELD_NUMBER: _ClassVar[int] + TOKENIZER_ID_FIELD_NUMBER: _ClassVar[int] + tokens: _containers.RepeatedCompositeFieldContainer[Token] + tokenizer_id: str + def __init__(self, tokens: _Optional[_Iterable[_Union[Token, _Mapping]]] = ..., tokenizer_id: _Optional[str] = ...) -> None: ... + +class Artifact(_message.Message): + __slots__ = ["id", "type", "mime", "magic", "binary", "text", "tokens", "classifier", "tensor", "index", "finish_reason", "seed", "uuid", "size"] + ID_FIELD_NUMBER: _ClassVar[int] + TYPE_FIELD_NUMBER: _ClassVar[int] + MIME_FIELD_NUMBER: _ClassVar[int] + MAGIC_FIELD_NUMBER: _ClassVar[int] + BINARY_FIELD_NUMBER: _ClassVar[int] + TEXT_FIELD_NUMBER: _ClassVar[int] + TOKENS_FIELD_NUMBER: _ClassVar[int] + CLASSIFIER_FIELD_NUMBER: _ClassVar[int] + TENSOR_FIELD_NUMBER: _ClassVar[int] + INDEX_FIELD_NUMBER: _ClassVar[int] + FINISH_REASON_FIELD_NUMBER: _ClassVar[int] + SEED_FIELD_NUMBER: _ClassVar[int] + UUID_FIELD_NUMBER: _ClassVar[int] + SIZE_FIELD_NUMBER: _ClassVar[int] + id: int + type: ArtifactType + mime: str + magic: str + binary: bytes + text: str + tokens: Tokens + classifier: ClassifierParameters + tensor: _tensors_pb2.Tensor + index: int + finish_reason: FinishReason + seed: int + uuid: str + size: int + def __init__(self, id: _Optional[int] = ..., type: _Optional[_Union[ArtifactType, str]] = ..., mime: _Optional[str] = ..., magic: _Optional[str] = ..., binary: _Optional[bytes] = ..., text: _Optional[str] = ..., tokens: _Optional[_Union[Tokens, _Mapping]] = ..., classifier: _Optional[_Union[ClassifierParameters, _Mapping]] = ..., tensor: _Optional[_Union[_tensors_pb2.Tensor, _Mapping]] = ..., index: _Optional[int] = ..., finish_reason: _Optional[_Union[FinishReason, str]] = ..., seed: _Optional[int] = ..., uuid: _Optional[str] = ..., size: _Optional[int] = ...) -> None: ... + +class PromptParameters(_message.Message): + __slots__ = ["init", "weight"] + INIT_FIELD_NUMBER: _ClassVar[int] + WEIGHT_FIELD_NUMBER: _ClassVar[int] + init: bool + weight: float + def __init__(self, init: bool = ..., weight: _Optional[float] = ...) -> None: ... + +class Prompt(_message.Message): + __slots__ = ["parameters", "text", "tokens", "artifact"] + PARAMETERS_FIELD_NUMBER: _ClassVar[int] + TEXT_FIELD_NUMBER: _ClassVar[int] + TOKENS_FIELD_NUMBER: _ClassVar[int] + ARTIFACT_FIELD_NUMBER: _ClassVar[int] + parameters: PromptParameters + text: str + tokens: Tokens + artifact: Artifact + def __init__(self, parameters: _Optional[_Union[PromptParameters, _Mapping]] = ..., text: _Optional[str] = ..., tokens: _Optional[_Union[Tokens, _Mapping]] = ..., artifact: _Optional[_Union[Artifact, _Mapping]] = ...) -> None: ... + +class SamplerParameters(_message.Message): + __slots__ = ["eta", "sampling_steps", "latent_channels", "downsampling_factor", "cfg_scale", "init_noise_scale", "step_noise_scale"] + ETA_FIELD_NUMBER: _ClassVar[int] + SAMPLING_STEPS_FIELD_NUMBER: _ClassVar[int] + LATENT_CHANNELS_FIELD_NUMBER: _ClassVar[int] + DOWNSAMPLING_FACTOR_FIELD_NUMBER: _ClassVar[int] + CFG_SCALE_FIELD_NUMBER: _ClassVar[int] + INIT_NOISE_SCALE_FIELD_NUMBER: _ClassVar[int] + STEP_NOISE_SCALE_FIELD_NUMBER: _ClassVar[int] + eta: float + sampling_steps: int + latent_channels: int + downsampling_factor: int + cfg_scale: float + init_noise_scale: float + step_noise_scale: float + def __init__(self, eta: _Optional[float] = ..., sampling_steps: _Optional[int] = ..., latent_channels: _Optional[int] = ..., downsampling_factor: _Optional[int] = ..., cfg_scale: _Optional[float] = ..., init_noise_scale: _Optional[float] = ..., step_noise_scale: _Optional[float] = ...) -> None: ... + +class ConditionerParameters(_message.Message): + __slots__ = ["vector_adjust_prior", "conditioner"] + VECTOR_ADJUST_PRIOR_FIELD_NUMBER: _ClassVar[int] + CONDITIONER_FIELD_NUMBER: _ClassVar[int] + vector_adjust_prior: str + conditioner: Model + def __init__(self, vector_adjust_prior: _Optional[str] = ..., conditioner: _Optional[_Union[Model, _Mapping]] = ...) -> None: ... + +class ScheduleParameters(_message.Message): + __slots__ = ["start", "end", "value"] + START_FIELD_NUMBER: _ClassVar[int] + END_FIELD_NUMBER: _ClassVar[int] + VALUE_FIELD_NUMBER: _ClassVar[int] + start: float + end: float + value: float + def __init__(self, start: _Optional[float] = ..., end: _Optional[float] = ..., value: _Optional[float] = ...) -> None: ... + +class StepParameter(_message.Message): + __slots__ = ["scaled_step", "sampler", "schedule", "guidance"] + SCALED_STEP_FIELD_NUMBER: _ClassVar[int] + SAMPLER_FIELD_NUMBER: _ClassVar[int] + SCHEDULE_FIELD_NUMBER: _ClassVar[int] + GUIDANCE_FIELD_NUMBER: _ClassVar[int] + scaled_step: float + sampler: SamplerParameters + schedule: ScheduleParameters + guidance: GuidanceParameters + def __init__(self, scaled_step: _Optional[float] = ..., sampler: _Optional[_Union[SamplerParameters, _Mapping]] = ..., schedule: _Optional[_Union[ScheduleParameters, _Mapping]] = ..., guidance: _Optional[_Union[GuidanceParameters, _Mapping]] = ...) -> None: ... + +class Model(_message.Message): + __slots__ = ["architecture", "publisher", "dataset", "version", "semantic_version", "alias"] + ARCHITECTURE_FIELD_NUMBER: _ClassVar[int] + PUBLISHER_FIELD_NUMBER: _ClassVar[int] + DATASET_FIELD_NUMBER: _ClassVar[int] + VERSION_FIELD_NUMBER: _ClassVar[int] + SEMANTIC_VERSION_FIELD_NUMBER: _ClassVar[int] + ALIAS_FIELD_NUMBER: _ClassVar[int] + architecture: ModelArchitecture + publisher: str + dataset: str + version: float + semantic_version: str + alias: str + def __init__(self, architecture: _Optional[_Union[ModelArchitecture, str]] = ..., publisher: _Optional[str] = ..., dataset: _Optional[str] = ..., version: _Optional[float] = ..., semantic_version: _Optional[str] = ..., alias: _Optional[str] = ...) -> None: ... + +class CutoutParameters(_message.Message): + __slots__ = ["cutouts", "count", "gray", "blur", "size_power"] + CUTOUTS_FIELD_NUMBER: _ClassVar[int] + COUNT_FIELD_NUMBER: _ClassVar[int] + GRAY_FIELD_NUMBER: _ClassVar[int] + BLUR_FIELD_NUMBER: _ClassVar[int] + SIZE_POWER_FIELD_NUMBER: _ClassVar[int] + cutouts: _containers.RepeatedCompositeFieldContainer[CutoutParameters] + count: int + gray: float + blur: float + size_power: float + def __init__(self, cutouts: _Optional[_Iterable[_Union[CutoutParameters, _Mapping]]] = ..., count: _Optional[int] = ..., gray: _Optional[float] = ..., blur: _Optional[float] = ..., size_power: _Optional[float] = ...) -> None: ... + +class GuidanceScheduleParameters(_message.Message): + __slots__ = ["duration", "value"] + DURATION_FIELD_NUMBER: _ClassVar[int] + VALUE_FIELD_NUMBER: _ClassVar[int] + duration: float + value: float + def __init__(self, duration: _Optional[float] = ..., value: _Optional[float] = ...) -> None: ... + +class GuidanceInstanceParameters(_message.Message): + __slots__ = ["models", "guidance_strength", "schedule", "cutouts", "prompt"] + MODELS_FIELD_NUMBER: _ClassVar[int] + GUIDANCE_STRENGTH_FIELD_NUMBER: _ClassVar[int] + SCHEDULE_FIELD_NUMBER: _ClassVar[int] + CUTOUTS_FIELD_NUMBER: _ClassVar[int] + PROMPT_FIELD_NUMBER: _ClassVar[int] + models: _containers.RepeatedCompositeFieldContainer[Model] + guidance_strength: float + schedule: _containers.RepeatedCompositeFieldContainer[GuidanceScheduleParameters] + cutouts: CutoutParameters + prompt: Prompt + def __init__(self, models: _Optional[_Iterable[_Union[Model, _Mapping]]] = ..., guidance_strength: _Optional[float] = ..., schedule: _Optional[_Iterable[_Union[GuidanceScheduleParameters, _Mapping]]] = ..., cutouts: _Optional[_Union[CutoutParameters, _Mapping]] = ..., prompt: _Optional[_Union[Prompt, _Mapping]] = ...) -> None: ... + +class GuidanceParameters(_message.Message): + __slots__ = ["guidance_preset", "instances"] + GUIDANCE_PRESET_FIELD_NUMBER: _ClassVar[int] + INSTANCES_FIELD_NUMBER: _ClassVar[int] + guidance_preset: GuidancePreset + instances: _containers.RepeatedCompositeFieldContainer[GuidanceInstanceParameters] + def __init__(self, guidance_preset: _Optional[_Union[GuidancePreset, str]] = ..., instances: _Optional[_Iterable[_Union[GuidanceInstanceParameters, _Mapping]]] = ...) -> None: ... + +class TransformType(_message.Message): + __slots__ = ["diffusion", "upscaler"] + DIFFUSION_FIELD_NUMBER: _ClassVar[int] + UPSCALER_FIELD_NUMBER: _ClassVar[int] + diffusion: DiffusionSampler + upscaler: Upscaler + def __init__(self, diffusion: _Optional[_Union[DiffusionSampler, str]] = ..., upscaler: _Optional[_Union[Upscaler, str]] = ...) -> None: ... + +class T2IAdapterParameter(_message.Message): + __slots__ = ["adapter_type", "adapter_strength", "adapter_init_type"] + ADAPTER_TYPE_FIELD_NUMBER: _ClassVar[int] + ADAPTER_STRENGTH_FIELD_NUMBER: _ClassVar[int] + ADAPTER_INIT_TYPE_FIELD_NUMBER: _ClassVar[int] + adapter_type: T2IAdapter + adapter_strength: float + adapter_init_type: T2IAdapterInit + def __init__(self, adapter_type: _Optional[_Union[T2IAdapter, str]] = ..., adapter_strength: _Optional[float] = ..., adapter_init_type: _Optional[_Union[T2IAdapterInit, str]] = ...) -> None: ... + +class ContentCredentialsParameters(_message.Message): + __slots__ = ["model_metadata"] + class ModelMetadata(int, metaclass=_enum_type_wrapper.EnumTypeWrapper): + __slots__ = [] + MODEL_METADATA_UNSPECIFIED: _ClassVar[ContentCredentialsParameters.ModelMetadata] + MODEL_METADATA_SIGN_WITH_ENGINE_ID: _ClassVar[ContentCredentialsParameters.ModelMetadata] + MODEL_METADATA_UNSPECIFIED: ContentCredentialsParameters.ModelMetadata + MODEL_METADATA_SIGN_WITH_ENGINE_ID: ContentCredentialsParameters.ModelMetadata + MODEL_METADATA_FIELD_NUMBER: _ClassVar[int] + model_metadata: ContentCredentialsParameters.ModelMetadata + def __init__(self, model_metadata: _Optional[_Union[ContentCredentialsParameters.ModelMetadata, str]] = ...) -> None: ... + +class FineTuningParameters(_message.Message): + __slots__ = ["model_id", "weight"] + MODEL_ID_FIELD_NUMBER: _ClassVar[int] + WEIGHT_FIELD_NUMBER: _ClassVar[int] + model_id: str + weight: float + def __init__(self, model_id: _Optional[str] = ..., weight: _Optional[float] = ...) -> None: ... + +class ImageParameters(_message.Message): + __slots__ = ["height", "width", "seed", "samples", "steps", "transform", "parameters", "masked_area_init", "weight_method", "quantize", "adapter", "fine_tuning_parameters", "content_credentials_parameters"] + HEIGHT_FIELD_NUMBER: _ClassVar[int] + WIDTH_FIELD_NUMBER: _ClassVar[int] + SEED_FIELD_NUMBER: _ClassVar[int] + SAMPLES_FIELD_NUMBER: _ClassVar[int] + STEPS_FIELD_NUMBER: _ClassVar[int] + TRANSFORM_FIELD_NUMBER: _ClassVar[int] + PARAMETERS_FIELD_NUMBER: _ClassVar[int] + MASKED_AREA_INIT_FIELD_NUMBER: _ClassVar[int] + WEIGHT_METHOD_FIELD_NUMBER: _ClassVar[int] + QUANTIZE_FIELD_NUMBER: _ClassVar[int] + ADAPTER_FIELD_NUMBER: _ClassVar[int] + FINE_TUNING_PARAMETERS_FIELD_NUMBER: _ClassVar[int] + CONTENT_CREDENTIALS_PARAMETERS_FIELD_NUMBER: _ClassVar[int] + height: int + width: int + seed: _containers.RepeatedScalarFieldContainer[int] + samples: int + steps: int + transform: TransformType + parameters: _containers.RepeatedCompositeFieldContainer[StepParameter] + masked_area_init: MaskedAreaInit + weight_method: WeightMethod + quantize: bool + adapter: T2IAdapterParameter + fine_tuning_parameters: _containers.RepeatedCompositeFieldContainer[FineTuningParameters] + content_credentials_parameters: ContentCredentialsParameters + def __init__(self, height: _Optional[int] = ..., width: _Optional[int] = ..., seed: _Optional[_Iterable[int]] = ..., samples: _Optional[int] = ..., steps: _Optional[int] = ..., transform: _Optional[_Union[TransformType, _Mapping]] = ..., parameters: _Optional[_Iterable[_Union[StepParameter, _Mapping]]] = ..., masked_area_init: _Optional[_Union[MaskedAreaInit, str]] = ..., weight_method: _Optional[_Union[WeightMethod, str]] = ..., quantize: bool = ..., adapter: _Optional[_Union[T2IAdapterParameter, _Mapping]] = ..., fine_tuning_parameters: _Optional[_Iterable[_Union[FineTuningParameters, _Mapping]]] = ..., content_credentials_parameters: _Optional[_Union[ContentCredentialsParameters, _Mapping]] = ...) -> None: ... + +class ClassifierConcept(_message.Message): + __slots__ = ["concept", "threshold"] + CONCEPT_FIELD_NUMBER: _ClassVar[int] + THRESHOLD_FIELD_NUMBER: _ClassVar[int] + concept: str + threshold: float + def __init__(self, concept: _Optional[str] = ..., threshold: _Optional[float] = ...) -> None: ... + +class ClassifierCategory(_message.Message): + __slots__ = ["name", "concepts", "adjustment", "action", "classifier_mode"] + NAME_FIELD_NUMBER: _ClassVar[int] + CONCEPTS_FIELD_NUMBER: _ClassVar[int] + ADJUSTMENT_FIELD_NUMBER: _ClassVar[int] + ACTION_FIELD_NUMBER: _ClassVar[int] + CLASSIFIER_MODE_FIELD_NUMBER: _ClassVar[int] + name: str + concepts: _containers.RepeatedCompositeFieldContainer[ClassifierConcept] + adjustment: float + action: Action + classifier_mode: ClassifierMode + def __init__(self, name: _Optional[str] = ..., concepts: _Optional[_Iterable[_Union[ClassifierConcept, _Mapping]]] = ..., adjustment: _Optional[float] = ..., action: _Optional[_Union[Action, str]] = ..., classifier_mode: _Optional[_Union[ClassifierMode, str]] = ...) -> None: ... + +class ClassifierParameters(_message.Message): + __slots__ = ["categories", "exceeds", "realized_action"] + CATEGORIES_FIELD_NUMBER: _ClassVar[int] + EXCEEDS_FIELD_NUMBER: _ClassVar[int] + REALIZED_ACTION_FIELD_NUMBER: _ClassVar[int] + categories: _containers.RepeatedCompositeFieldContainer[ClassifierCategory] + exceeds: _containers.RepeatedCompositeFieldContainer[ClassifierCategory] + realized_action: Action + def __init__(self, categories: _Optional[_Iterable[_Union[ClassifierCategory, _Mapping]]] = ..., exceeds: _Optional[_Iterable[_Union[ClassifierCategory, _Mapping]]] = ..., realized_action: _Optional[_Union[Action, str]] = ...) -> None: ... + +class InterpolateParameters(_message.Message): + __slots__ = ["ratios", "mode"] + RATIOS_FIELD_NUMBER: _ClassVar[int] + MODE_FIELD_NUMBER: _ClassVar[int] + ratios: _containers.RepeatedScalarFieldContainer[float] + mode: InterpolateMode + def __init__(self, ratios: _Optional[_Iterable[float]] = ..., mode: _Optional[_Union[InterpolateMode, str]] = ...) -> None: ... + +class TransformColorAdjust(_message.Message): + __slots__ = ["brightness", "contrast", "hue", "saturation", "lightness", "match_image", "match_mode", "noise_amount", "noise_seed"] + BRIGHTNESS_FIELD_NUMBER: _ClassVar[int] + CONTRAST_FIELD_NUMBER: _ClassVar[int] + HUE_FIELD_NUMBER: _ClassVar[int] + SATURATION_FIELD_NUMBER: _ClassVar[int] + LIGHTNESS_FIELD_NUMBER: _ClassVar[int] + MATCH_IMAGE_FIELD_NUMBER: _ClassVar[int] + MATCH_MODE_FIELD_NUMBER: _ClassVar[int] + NOISE_AMOUNT_FIELD_NUMBER: _ClassVar[int] + NOISE_SEED_FIELD_NUMBER: _ClassVar[int] + brightness: float + contrast: float + hue: float + saturation: float + lightness: float + match_image: Artifact + match_mode: ColorMatchMode + noise_amount: float + noise_seed: int + def __init__(self, brightness: _Optional[float] = ..., contrast: _Optional[float] = ..., hue: _Optional[float] = ..., saturation: _Optional[float] = ..., lightness: _Optional[float] = ..., match_image: _Optional[_Union[Artifact, _Mapping]] = ..., match_mode: _Optional[_Union[ColorMatchMode, str]] = ..., noise_amount: _Optional[float] = ..., noise_seed: _Optional[int] = ...) -> None: ... + +class TransformDepthCalc(_message.Message): + __slots__ = ["blend_weight", "blur_radius", "reverse"] + BLEND_WEIGHT_FIELD_NUMBER: _ClassVar[int] + BLUR_RADIUS_FIELD_NUMBER: _ClassVar[int] + REVERSE_FIELD_NUMBER: _ClassVar[int] + blend_weight: float + blur_radius: int + reverse: bool + def __init__(self, blend_weight: _Optional[float] = ..., blur_radius: _Optional[int] = ..., reverse: bool = ...) -> None: ... + +class TransformMatrix(_message.Message): + __slots__ = ["data"] + DATA_FIELD_NUMBER: _ClassVar[int] + data: _containers.RepeatedScalarFieldContainer[float] + def __init__(self, data: _Optional[_Iterable[float]] = ...) -> None: ... + +class TransformResample(_message.Message): + __slots__ = ["border_mode", "transform", "prev_transform", "depth_warp", "export_mask"] + BORDER_MODE_FIELD_NUMBER: _ClassVar[int] + TRANSFORM_FIELD_NUMBER: _ClassVar[int] + PREV_TRANSFORM_FIELD_NUMBER: _ClassVar[int] + DEPTH_WARP_FIELD_NUMBER: _ClassVar[int] + EXPORT_MASK_FIELD_NUMBER: _ClassVar[int] + border_mode: BorderMode + transform: TransformMatrix + prev_transform: TransformMatrix + depth_warp: float + export_mask: bool + def __init__(self, border_mode: _Optional[_Union[BorderMode, str]] = ..., transform: _Optional[_Union[TransformMatrix, _Mapping]] = ..., prev_transform: _Optional[_Union[TransformMatrix, _Mapping]] = ..., depth_warp: _Optional[float] = ..., export_mask: bool = ...) -> None: ... + +class CameraParameters(_message.Message): + __slots__ = ["camera_type", "near_plane", "far_plane", "fov"] + CAMERA_TYPE_FIELD_NUMBER: _ClassVar[int] + NEAR_PLANE_FIELD_NUMBER: _ClassVar[int] + FAR_PLANE_FIELD_NUMBER: _ClassVar[int] + FOV_FIELD_NUMBER: _ClassVar[int] + camera_type: CameraType + near_plane: float + far_plane: float + fov: float + def __init__(self, camera_type: _Optional[_Union[CameraType, str]] = ..., near_plane: _Optional[float] = ..., far_plane: _Optional[float] = ..., fov: _Optional[float] = ...) -> None: ... + +class TransformCameraPose(_message.Message): + __slots__ = ["world_to_view_matrix", "camera_parameters", "do_prefill", "render_mode"] + WORLD_TO_VIEW_MATRIX_FIELD_NUMBER: _ClassVar[int] + CAMERA_PARAMETERS_FIELD_NUMBER: _ClassVar[int] + DO_PREFILL_FIELD_NUMBER: _ClassVar[int] + RENDER_MODE_FIELD_NUMBER: _ClassVar[int] + world_to_view_matrix: TransformMatrix + camera_parameters: CameraParameters + do_prefill: bool + render_mode: RenderMode + def __init__(self, world_to_view_matrix: _Optional[_Union[TransformMatrix, _Mapping]] = ..., camera_parameters: _Optional[_Union[CameraParameters, _Mapping]] = ..., do_prefill: bool = ..., render_mode: _Optional[_Union[RenderMode, str]] = ...) -> None: ... + +class TransformParameters(_message.Message): + __slots__ = ["color_adjust", "depth_calc", "resample", "camera_pose"] + COLOR_ADJUST_FIELD_NUMBER: _ClassVar[int] + DEPTH_CALC_FIELD_NUMBER: _ClassVar[int] + RESAMPLE_FIELD_NUMBER: _ClassVar[int] + CAMERA_POSE_FIELD_NUMBER: _ClassVar[int] + color_adjust: TransformColorAdjust + depth_calc: TransformDepthCalc + resample: TransformResample + camera_pose: TransformCameraPose + def __init__(self, color_adjust: _Optional[_Union[TransformColorAdjust, _Mapping]] = ..., depth_calc: _Optional[_Union[TransformDepthCalc, _Mapping]] = ..., resample: _Optional[_Union[TransformResample, _Mapping]] = ..., camera_pose: _Optional[_Union[TransformCameraPose, _Mapping]] = ...) -> None: ... + +class AssetParameters(_message.Message): + __slots__ = ["action", "project_id", "use"] + ACTION_FIELD_NUMBER: _ClassVar[int] + PROJECT_ID_FIELD_NUMBER: _ClassVar[int] + USE_FIELD_NUMBER: _ClassVar[int] + action: AssetAction + project_id: str + use: AssetUse + def __init__(self, action: _Optional[_Union[AssetAction, str]] = ..., project_id: _Optional[str] = ..., use: _Optional[_Union[AssetUse, str]] = ...) -> None: ... + +class AnswerMeta(_message.Message): + __slots__ = ["gpu_id", "cpu_id", "node_id", "engine_id"] + GPU_ID_FIELD_NUMBER: _ClassVar[int] + CPU_ID_FIELD_NUMBER: _ClassVar[int] + NODE_ID_FIELD_NUMBER: _ClassVar[int] + ENGINE_ID_FIELD_NUMBER: _ClassVar[int] + gpu_id: str + cpu_id: str + node_id: str + engine_id: str + def __init__(self, gpu_id: _Optional[str] = ..., cpu_id: _Optional[str] = ..., node_id: _Optional[str] = ..., engine_id: _Optional[str] = ...) -> None: ... + +class Answer(_message.Message): + __slots__ = ["answer_id", "request_id", "received", "created", "meta", "artifacts"] + ANSWER_ID_FIELD_NUMBER: _ClassVar[int] + REQUEST_ID_FIELD_NUMBER: _ClassVar[int] + RECEIVED_FIELD_NUMBER: _ClassVar[int] + CREATED_FIELD_NUMBER: _ClassVar[int] + META_FIELD_NUMBER: _ClassVar[int] + ARTIFACTS_FIELD_NUMBER: _ClassVar[int] + answer_id: str + request_id: str + received: int + created: int + meta: AnswerMeta + artifacts: _containers.RepeatedCompositeFieldContainer[Artifact] + def __init__(self, answer_id: _Optional[str] = ..., request_id: _Optional[str] = ..., received: _Optional[int] = ..., created: _Optional[int] = ..., meta: _Optional[_Union[AnswerMeta, _Mapping]] = ..., artifacts: _Optional[_Iterable[_Union[Artifact, _Mapping]]] = ...) -> None: ... + +class AnswerBatch(_message.Message): + __slots__ = ["batch_id", "answers"] + BATCH_ID_FIELD_NUMBER: _ClassVar[int] + ANSWERS_FIELD_NUMBER: _ClassVar[int] + batch_id: str + answers: _containers.RepeatedCompositeFieldContainer[Answer] + def __init__(self, batch_id: _Optional[str] = ..., answers: _Optional[_Iterable[_Union[Answer, _Mapping]]] = ...) -> None: ... + +class Request(_message.Message): + __slots__ = ["engine_id", "request_id", "requested_type", "prompt", "image", "classifier", "asset", "interpolate", "transform", "conditioner", "extras"] + ENGINE_ID_FIELD_NUMBER: _ClassVar[int] + REQUEST_ID_FIELD_NUMBER: _ClassVar[int] + REQUESTED_TYPE_FIELD_NUMBER: _ClassVar[int] + PROMPT_FIELD_NUMBER: _ClassVar[int] + IMAGE_FIELD_NUMBER: _ClassVar[int] + CLASSIFIER_FIELD_NUMBER: _ClassVar[int] + ASSET_FIELD_NUMBER: _ClassVar[int] + INTERPOLATE_FIELD_NUMBER: _ClassVar[int] + TRANSFORM_FIELD_NUMBER: _ClassVar[int] + CONDITIONER_FIELD_NUMBER: _ClassVar[int] + EXTRAS_FIELD_NUMBER: _ClassVar[int] + engine_id: str + request_id: str + requested_type: ArtifactType + prompt: _containers.RepeatedCompositeFieldContainer[Prompt] + image: ImageParameters + classifier: ClassifierParameters + asset: AssetParameters + interpolate: InterpolateParameters + transform: TransformParameters + conditioner: ConditionerParameters + extras: _struct_pb2.Struct + def __init__(self, engine_id: _Optional[str] = ..., request_id: _Optional[str] = ..., requested_type: _Optional[_Union[ArtifactType, str]] = ..., prompt: _Optional[_Iterable[_Union[Prompt, _Mapping]]] = ..., image: _Optional[_Union[ImageParameters, _Mapping]] = ..., classifier: _Optional[_Union[ClassifierParameters, _Mapping]] = ..., asset: _Optional[_Union[AssetParameters, _Mapping]] = ..., interpolate: _Optional[_Union[InterpolateParameters, _Mapping]] = ..., transform: _Optional[_Union[TransformParameters, _Mapping]] = ..., conditioner: _Optional[_Union[ConditionerParameters, _Mapping]] = ..., extras: _Optional[_Union[_struct_pb2.Struct, _Mapping]] = ...) -> None: ... + +class OnStatus(_message.Message): + __slots__ = ["reason", "target", "action"] + REASON_FIELD_NUMBER: _ClassVar[int] + TARGET_FIELD_NUMBER: _ClassVar[int] + ACTION_FIELD_NUMBER: _ClassVar[int] + reason: _containers.RepeatedScalarFieldContainer[FinishReason] + target: str + action: _containers.RepeatedScalarFieldContainer[StageAction] + def __init__(self, reason: _Optional[_Iterable[_Union[FinishReason, str]]] = ..., target: _Optional[str] = ..., action: _Optional[_Iterable[_Union[StageAction, str]]] = ...) -> None: ... + +class Stage(_message.Message): + __slots__ = ["id", "request", "on_status"] + ID_FIELD_NUMBER: _ClassVar[int] + REQUEST_FIELD_NUMBER: _ClassVar[int] + ON_STATUS_FIELD_NUMBER: _ClassVar[int] + id: str + request: Request + on_status: _containers.RepeatedCompositeFieldContainer[OnStatus] + def __init__(self, id: _Optional[str] = ..., request: _Optional[_Union[Request, _Mapping]] = ..., on_status: _Optional[_Iterable[_Union[OnStatus, _Mapping]]] = ...) -> None: ... + +class ChainRequest(_message.Message): + __slots__ = ["request_id", "stage"] + REQUEST_ID_FIELD_NUMBER: _ClassVar[int] + STAGE_FIELD_NUMBER: _ClassVar[int] + request_id: str + stage: _containers.RepeatedCompositeFieldContainer[Stage] + def __init__(self, request_id: _Optional[str] = ..., stage: _Optional[_Iterable[_Union[Stage, _Mapping]]] = ...) -> None: ... diff --git a/src/stability_api/platform/generation/v1/generation_pb2_grpc.py b/src/stability_api/platform/generation/v1/generation_pb2_grpc.py new file mode 100644 index 0000000..e034662 --- /dev/null +++ b/src/stability_api/platform/generation/v1/generation_pb2_grpc.py @@ -0,0 +1,108 @@ +# Generated by the gRPC Python protocol compiler plugin. DO NOT EDIT! +"""Client and server classes corresponding to protobuf-defined services.""" +import grpc + +from stability_api.platform.generation.v1 import generation_pb2 as stability__api_dot_platform_dot_generation_dot_v1_dot_generation__pb2 + + +class GenerationServiceStub(object): + """ + gRPC services + + """ + + def __init__(self, channel): + """Constructor. + + Args: + channel: A grpc.Channel. + """ + self.Generate = channel.unary_stream( + '/stabilityai.platformapis.generation.v1.GenerationService/Generate', + request_serializer=stability__api_dot_platform_dot_generation_dot_v1_dot_generation__pb2.Request.SerializeToString, + response_deserializer=stability__api_dot_platform_dot_generation_dot_v1_dot_generation__pb2.Answer.FromString, + ) + self.ChainGenerate = channel.unary_stream( + '/stabilityai.platformapis.generation.v1.GenerationService/ChainGenerate', + request_serializer=stability__api_dot_platform_dot_generation_dot_v1_dot_generation__pb2.ChainRequest.SerializeToString, + response_deserializer=stability__api_dot_platform_dot_generation_dot_v1_dot_generation__pb2.Answer.FromString, + ) + + +class GenerationServiceServicer(object): + """ + gRPC services + + """ + + def Generate(self, request, context): + """Missing associated documentation comment in .proto file.""" + context.set_code(grpc.StatusCode.UNIMPLEMENTED) + context.set_details('Method not implemented!') + raise NotImplementedError('Method not implemented!') + + def ChainGenerate(self, request, context): + """Missing associated documentation comment in .proto file.""" + context.set_code(grpc.StatusCode.UNIMPLEMENTED) + context.set_details('Method not implemented!') + raise NotImplementedError('Method not implemented!') + + +def add_GenerationServiceServicer_to_server(servicer, server): + rpc_method_handlers = { + 'Generate': grpc.unary_stream_rpc_method_handler( + servicer.Generate, + request_deserializer=stability__api_dot_platform_dot_generation_dot_v1_dot_generation__pb2.Request.FromString, + response_serializer=stability__api_dot_platform_dot_generation_dot_v1_dot_generation__pb2.Answer.SerializeToString, + ), + 'ChainGenerate': grpc.unary_stream_rpc_method_handler( + servicer.ChainGenerate, + request_deserializer=stability__api_dot_platform_dot_generation_dot_v1_dot_generation__pb2.ChainRequest.FromString, + response_serializer=stability__api_dot_platform_dot_generation_dot_v1_dot_generation__pb2.Answer.SerializeToString, + ), + } + generic_handler = grpc.method_handlers_generic_handler( + 'stabilityai.platformapis.generation.v1.GenerationService', rpc_method_handlers) + server.add_generic_rpc_handlers((generic_handler,)) + + + # This class is part of an EXPERIMENTAL API. +class GenerationService(object): + """ + gRPC services + + """ + + @staticmethod + def Generate(request, + target, + options=(), + channel_credentials=None, + call_credentials=None, + insecure=False, + compression=None, + wait_for_ready=None, + timeout=None, + metadata=None): + return grpc.experimental.unary_stream(request, target, '/stabilityai.platformapis.generation.v1.GenerationService/Generate', + stability__api_dot_platform_dot_generation_dot_v1_dot_generation__pb2.Request.SerializeToString, + stability__api_dot_platform_dot_generation_dot_v1_dot_generation__pb2.Answer.FromString, + options, channel_credentials, + insecure, call_credentials, compression, wait_for_ready, timeout, metadata) + + @staticmethod + def ChainGenerate(request, + target, + options=(), + channel_credentials=None, + call_credentials=None, + insecure=False, + compression=None, + wait_for_ready=None, + timeout=None, + metadata=None): + return grpc.experimental.unary_stream(request, target, '/stabilityai.platformapis.generation.v1.GenerationService/ChainGenerate', + stability__api_dot_platform_dot_generation_dot_v1_dot_generation__pb2.ChainRequest.SerializeToString, + stability__api_dot_platform_dot_generation_dot_v1_dot_generation__pb2.Answer.FromString, + options, channel_credentials, + insecure, call_credentials, compression, wait_for_ready, timeout, metadata) diff --git a/src/stability_api/platform/generation/v1/generationv1connect/generation.connect.go b/src/stability_api/platform/generation/v1/generationv1connect/generation.connect.go new file mode 100644 index 0000000..cd29b0f --- /dev/null +++ b/src/stability_api/platform/generation/v1/generationv1connect/generation.connect.go @@ -0,0 +1,135 @@ +// Code generated by protoc-gen-connect-go. DO NOT EDIT. +// +// Source: stability_api/platform/generation/v1/generation.proto + +package generationv1connect + +import ( + connect "connectrpc.com/connect" + context "context" + errors "errors" + v1 "github.com/stability-ai/api-interfaces/src/stability_api/platform/generation/v1" + http "net/http" + strings "strings" +) + +// This is a compile-time assertion to ensure that this generated file and the connect package are +// compatible. If you get a compiler error that this constant is not defined, this code was +// generated with a version of connect newer than the one compiled into your binary. You can fix the +// problem by either regenerating this code with an older version of connect or updating the connect +// version compiled into your binary. +const _ = connect.IsAtLeastVersion0_1_0 + +const ( + // GenerationServiceName is the fully-qualified name of the GenerationService service. + GenerationServiceName = "stabilityai.platformapis.generation.v1.GenerationService" +) + +// These constants are the fully-qualified names of the RPCs defined in this package. They're +// exposed at runtime as Spec.Procedure and as the final two segments of the HTTP route. +// +// Note that these are different from the fully-qualified method names used by +// google.golang.org/protobuf/reflect/protoreflect. To convert from these constants to +// reflection-formatted method names, remove the leading slash and convert the remaining slash to a +// period. +const ( + // GenerationServiceGenerateProcedure is the fully-qualified name of the GenerationService's + // Generate RPC. + GenerationServiceGenerateProcedure = "/stabilityai.platformapis.generation.v1.GenerationService/Generate" + // GenerationServiceChainGenerateProcedure is the fully-qualified name of the GenerationService's + // ChainGenerate RPC. + GenerationServiceChainGenerateProcedure = "/stabilityai.platformapis.generation.v1.GenerationService/ChainGenerate" +) + +// GenerationServiceClient is a client for the +// stabilityai.platformapis.generation.v1.GenerationService service. +type GenerationServiceClient interface { + Generate(context.Context, *connect.Request[v1.Request]) (*connect.ServerStreamForClient[v1.Answer], error) + ChainGenerate(context.Context, *connect.Request[v1.ChainRequest]) (*connect.ServerStreamForClient[v1.Answer], error) +} + +// NewGenerationServiceClient constructs a client for the +// stabilityai.platformapis.generation.v1.GenerationService service. By default, it uses the Connect +// protocol with the binary Protobuf Codec, asks for gzipped responses, and sends uncompressed +// requests. To use the gRPC or gRPC-Web protocols, supply the connect.WithGRPC() or +// connect.WithGRPCWeb() options. +// +// The URL supplied here should be the base URL for the Connect or gRPC server (for example, +// http://api.acme.com or https://acme.com/grpc). +func NewGenerationServiceClient(httpClient connect.HTTPClient, baseURL string, opts ...connect.ClientOption) GenerationServiceClient { + baseURL = strings.TrimRight(baseURL, "/") + return &generationServiceClient{ + generate: connect.NewClient[v1.Request, v1.Answer]( + httpClient, + baseURL+GenerationServiceGenerateProcedure, + opts..., + ), + chainGenerate: connect.NewClient[v1.ChainRequest, v1.Answer]( + httpClient, + baseURL+GenerationServiceChainGenerateProcedure, + opts..., + ), + } +} + +// generationServiceClient implements GenerationServiceClient. +type generationServiceClient struct { + generate *connect.Client[v1.Request, v1.Answer] + chainGenerate *connect.Client[v1.ChainRequest, v1.Answer] +} + +// Generate calls stabilityai.platformapis.generation.v1.GenerationService.Generate. +func (c *generationServiceClient) Generate(ctx context.Context, req *connect.Request[v1.Request]) (*connect.ServerStreamForClient[v1.Answer], error) { + return c.generate.CallServerStream(ctx, req) +} + +// ChainGenerate calls stabilityai.platformapis.generation.v1.GenerationService.ChainGenerate. +func (c *generationServiceClient) ChainGenerate(ctx context.Context, req *connect.Request[v1.ChainRequest]) (*connect.ServerStreamForClient[v1.Answer], error) { + return c.chainGenerate.CallServerStream(ctx, req) +} + +// GenerationServiceHandler is an implementation of the +// stabilityai.platformapis.generation.v1.GenerationService service. +type GenerationServiceHandler interface { + Generate(context.Context, *connect.Request[v1.Request], *connect.ServerStream[v1.Answer]) error + ChainGenerate(context.Context, *connect.Request[v1.ChainRequest], *connect.ServerStream[v1.Answer]) error +} + +// NewGenerationServiceHandler builds an HTTP handler from the service implementation. It returns +// the path on which to mount the handler and the handler itself. +// +// By default, handlers support the Connect, gRPC, and gRPC-Web protocols with the binary Protobuf +// and JSON codecs. They also support gzip compression. +func NewGenerationServiceHandler(svc GenerationServiceHandler, opts ...connect.HandlerOption) (string, http.Handler) { + generationServiceGenerateHandler := connect.NewServerStreamHandler( + GenerationServiceGenerateProcedure, + svc.Generate, + opts..., + ) + generationServiceChainGenerateHandler := connect.NewServerStreamHandler( + GenerationServiceChainGenerateProcedure, + svc.ChainGenerate, + opts..., + ) + return "/stabilityai.platformapis.generation.v1.GenerationService/", http.HandlerFunc(func(w http.ResponseWriter, r *http.Request) { + switch r.URL.Path { + case GenerationServiceGenerateProcedure: + generationServiceGenerateHandler.ServeHTTP(w, r) + case GenerationServiceChainGenerateProcedure: + generationServiceChainGenerateHandler.ServeHTTP(w, r) + default: + http.NotFound(w, r) + } + }) +} + +// UnimplementedGenerationServiceHandler returns CodeUnimplemented from all methods. +type UnimplementedGenerationServiceHandler struct{} + +func (UnimplementedGenerationServiceHandler) Generate(context.Context, *connect.Request[v1.Request], *connect.ServerStream[v1.Answer]) error { + return connect.NewError(connect.CodeUnimplemented, errors.New("stabilityai.platformapis.generation.v1.GenerationService.Generate is not implemented")) +} + +func (UnimplementedGenerationServiceHandler) ChainGenerate(context.Context, *connect.Request[v1.ChainRequest], *connect.ServerStream[v1.Answer]) error { + return connect.NewError(connect.CodeUnimplemented, errors.New("stabilityai.platformapis.generation.v1.GenerationService.ChainGenerate is not implemented")) +} diff --git a/src/stability_api/platform/project/v1/project.pb.go b/src/stability_api/platform/project/v1/project.pb.go new file mode 100644 index 0000000..08244ed --- /dev/null +++ b/src/stability_api/platform/project/v1/project.pb.go @@ -0,0 +1,2070 @@ +// Code generated by protoc-gen-go. DO NOT EDIT. +// versions: +// protoc-gen-go v1.31.0 +// protoc (unknown) +// source: stability_api/platform/project/v1/project.proto + +package projectv1 + +import ( + v1 "github.com/stability-ai/api-interfaces/src/stability_api/platform/generation/v1" + protoreflect "google.golang.org/protobuf/reflect/protoreflect" + protoimpl "google.golang.org/protobuf/runtime/protoimpl" + reflect "reflect" + sync "sync" +) + +const ( + // Verify that this generated code is sufficiently up-to-date. + _ = protoimpl.EnforceVersion(20 - protoimpl.MinVersion) + // Verify that runtime/protoimpl is sufficiently up-to-date. + _ = protoimpl.EnforceVersion(protoimpl.MaxVersion - 20) +) + +type ProjectAccess int32 + +const ( + ProjectAccess_PROJECT_ACCESS_PRIVATE ProjectAccess = 0 // Private access, only owner organization can access + ProjectAccess_PROJECT_ACCESS_PUBLIC ProjectAccess = 1 // Public access, anyone can access +) + +// Enum value maps for ProjectAccess. +var ( + ProjectAccess_name = map[int32]string{ + 0: "PROJECT_ACCESS_PRIVATE", + 1: "PROJECT_ACCESS_PUBLIC", + } + ProjectAccess_value = map[string]int32{ + "PROJECT_ACCESS_PRIVATE": 0, + "PROJECT_ACCESS_PUBLIC": 1, + } +) + +func (x ProjectAccess) Enum() *ProjectAccess { + p := new(ProjectAccess) + *p = x + return p +} + +func (x ProjectAccess) String() string { + return protoimpl.X.EnumStringOf(x.Descriptor(), protoreflect.EnumNumber(x)) +} + +func (ProjectAccess) Descriptor() protoreflect.EnumDescriptor { + return file_stability_api_platform_project_v1_project_proto_enumTypes[0].Descriptor() +} + +func (ProjectAccess) Type() protoreflect.EnumType { + return &file_stability_api_platform_project_v1_project_proto_enumTypes[0] +} + +func (x ProjectAccess) Number() protoreflect.EnumNumber { + return protoreflect.EnumNumber(x) +} + +// Deprecated: Use ProjectAccess.Descriptor instead. +func (ProjectAccess) EnumDescriptor() ([]byte, []int) { + return file_stability_api_platform_project_v1_project_proto_rawDescGZIP(), []int{0} +} + +type ProjectStatus int32 + +const ( + ProjectStatus_PROJECT_STATUS_INACTIVE ProjectStatus = 0 // Inactive project + ProjectStatus_PROJECT_STATUS_ACTIVE ProjectStatus = 1 // Active project + ProjectStatus_PROJECT_STATUS_DELETED ProjectStatus = 2 // Deleted project, only set by delete endpoint +) + +// Enum value maps for ProjectStatus. +var ( + ProjectStatus_name = map[int32]string{ + 0: "PROJECT_STATUS_INACTIVE", + 1: "PROJECT_STATUS_ACTIVE", + 2: "PROJECT_STATUS_DELETED", + } + ProjectStatus_value = map[string]int32{ + "PROJECT_STATUS_INACTIVE": 0, + "PROJECT_STATUS_ACTIVE": 1, + "PROJECT_STATUS_DELETED": 2, + } +) + +func (x ProjectStatus) Enum() *ProjectStatus { + p := new(ProjectStatus) + *p = x + return p +} + +func (x ProjectStatus) String() string { + return protoimpl.X.EnumStringOf(x.Descriptor(), protoreflect.EnumNumber(x)) +} + +func (ProjectStatus) Descriptor() protoreflect.EnumDescriptor { + return file_stability_api_platform_project_v1_project_proto_enumTypes[1].Descriptor() +} + +func (ProjectStatus) Type() protoreflect.EnumType { + return &file_stability_api_platform_project_v1_project_proto_enumTypes[1] +} + +func (x ProjectStatus) Number() protoreflect.EnumNumber { + return protoreflect.EnumNumber(x) +} + +// Deprecated: Use ProjectStatus.Descriptor instead. +func (ProjectStatus) EnumDescriptor() ([]byte, []int) { + return file_stability_api_platform_project_v1_project_proto_rawDescGZIP(), []int{1} +} + +type ProjectAssetUse int32 + +const ( + ProjectAssetUse_PROJECT_ASSET_USE_UNDEFINED ProjectAssetUse = 0 // Asset does not have use defined + ProjectAssetUse_PROJECT_ASSET_USE_INPUT ProjectAssetUse = 1 // Asset is used as an input for the project + ProjectAssetUse_PROJECT_ASSET_USE_OUTPUT ProjectAssetUse = 2 // Asset is an output from the project + ProjectAssetUse_PROJECT_ASSET_USE_INTERMEDIATE ProjectAssetUse = 3 // Asset is an output from an intermediate step of the project + ProjectAssetUse_PROJECT_ASSET_USE_PROJECT ProjectAssetUse = 4 // Asset is used as the project file for the project +) + +// Enum value maps for ProjectAssetUse. +var ( + ProjectAssetUse_name = map[int32]string{ + 0: "PROJECT_ASSET_USE_UNDEFINED", + 1: "PROJECT_ASSET_USE_INPUT", + 2: "PROJECT_ASSET_USE_OUTPUT", + 3: "PROJECT_ASSET_USE_INTERMEDIATE", + 4: "PROJECT_ASSET_USE_PROJECT", + } + ProjectAssetUse_value = map[string]int32{ + "PROJECT_ASSET_USE_UNDEFINED": 0, + "PROJECT_ASSET_USE_INPUT": 1, + "PROJECT_ASSET_USE_OUTPUT": 2, + "PROJECT_ASSET_USE_INTERMEDIATE": 3, + "PROJECT_ASSET_USE_PROJECT": 4, + } +) + +func (x ProjectAssetUse) Enum() *ProjectAssetUse { + p := new(ProjectAssetUse) + *p = x + return p +} + +func (x ProjectAssetUse) String() string { + return protoimpl.X.EnumStringOf(x.Descriptor(), protoreflect.EnumNumber(x)) +} + +func (ProjectAssetUse) Descriptor() protoreflect.EnumDescriptor { + return file_stability_api_platform_project_v1_project_proto_enumTypes[2].Descriptor() +} + +func (ProjectAssetUse) Type() protoreflect.EnumType { + return &file_stability_api_platform_project_v1_project_proto_enumTypes[2] +} + +func (x ProjectAssetUse) Number() protoreflect.EnumNumber { + return protoreflect.EnumNumber(x) +} + +// Deprecated: Use ProjectAssetUse.Descriptor instead. +func (ProjectAssetUse) EnumDescriptor() ([]byte, []int) { + return file_stability_api_platform_project_v1_project_proto_rawDescGZIP(), []int{2} +} + +type ProjectSortDir int32 + +const ( + ProjectSortDir_PROJECT_SORT_DIR_UNSPECIFIED ProjectSortDir = 0 // Sort direction is not specified, uses default + ProjectSortDir_PROJECT_SORT_DIR_ASC ProjectSortDir = 1 // Sort in ascending order + ProjectSortDir_PROJECT_SORT_DIR_DESC ProjectSortDir = 2 // Sort in descending order +) + +// Enum value maps for ProjectSortDir. +var ( + ProjectSortDir_name = map[int32]string{ + 0: "PROJECT_SORT_DIR_UNSPECIFIED", + 1: "PROJECT_SORT_DIR_ASC", + 2: "PROJECT_SORT_DIR_DESC", + } + ProjectSortDir_value = map[string]int32{ + "PROJECT_SORT_DIR_UNSPECIFIED": 0, + "PROJECT_SORT_DIR_ASC": 1, + "PROJECT_SORT_DIR_DESC": 2, + } +) + +func (x ProjectSortDir) Enum() *ProjectSortDir { + p := new(ProjectSortDir) + *p = x + return p +} + +func (x ProjectSortDir) String() string { + return protoimpl.X.EnumStringOf(x.Descriptor(), protoreflect.EnumNumber(x)) +} + +func (ProjectSortDir) Descriptor() protoreflect.EnumDescriptor { + return file_stability_api_platform_project_v1_project_proto_enumTypes[3].Descriptor() +} + +func (ProjectSortDir) Type() protoreflect.EnumType { + return &file_stability_api_platform_project_v1_project_proto_enumTypes[3] +} + +func (x ProjectSortDir) Number() protoreflect.EnumNumber { + return protoreflect.EnumNumber(x) +} + +// Deprecated: Use ProjectSortDir.Descriptor instead. +func (ProjectSortDir) EnumDescriptor() ([]byte, []int) { + return file_stability_api_platform_project_v1_project_proto_rawDescGZIP(), []int{3} +} + +// The Type of Project being created +type ProjectType int32 + +const ( + ProjectType_PROJECT_TYPE_UNSPECIFIED ProjectType = 0 // Zero-value, unspecified + ProjectType_PROJECT_TYPE_TRAINING ProjectType = 1 // Training project, used for Fine-Tuning models +) + +// Enum value maps for ProjectType. +var ( + ProjectType_name = map[int32]string{ + 0: "PROJECT_TYPE_UNSPECIFIED", + 1: "PROJECT_TYPE_TRAINING", + } + ProjectType_value = map[string]int32{ + "PROJECT_TYPE_UNSPECIFIED": 0, + "PROJECT_TYPE_TRAINING": 1, + } +) + +func (x ProjectType) Enum() *ProjectType { + p := new(ProjectType) + *p = x + return p +} + +func (x ProjectType) String() string { + return protoimpl.X.EnumStringOf(x.Descriptor(), protoreflect.EnumNumber(x)) +} + +func (ProjectType) Descriptor() protoreflect.EnumDescriptor { + return file_stability_api_platform_project_v1_project_proto_enumTypes[4].Descriptor() +} + +func (ProjectType) Type() protoreflect.EnumType { + return &file_stability_api_platform_project_v1_project_proto_enumTypes[4] +} + +func (x ProjectType) Number() protoreflect.EnumNumber { + return protoreflect.EnumNumber(x) +} + +// Deprecated: Use ProjectType.Descriptor instead. +func (ProjectType) EnumDescriptor() ([]byte, []int) { + return file_stability_api_platform_project_v1_project_proto_rawDescGZIP(), []int{4} +} + +type ProjectAsset struct { + state protoimpl.MessageState + sizeCache protoimpl.SizeCache + unknownFields protoimpl.UnknownFields + + Id string `protobuf:"bytes,1,opt,name=id,proto3" json:"id,omitempty"` // ID of the asset, UUIDv4 + Uri string `protobuf:"bytes,2,opt,name=uri,proto3" json:"uri,omitempty"` // The URI to the asset + Use ProjectAssetUse `protobuf:"varint,3,opt,name=use,proto3,enum=stabilityai.platformapis.project.v1.ProjectAssetUse" json:"use,omitempty"` // The use of the asset with respect to the project + Name string `protobuf:"bytes,4,opt,name=name,proto3" json:"name,omitempty"` // The name of the asset + Size uint64 `protobuf:"varint,5,opt,name=size,proto3" json:"size,omitempty"` // The asset size in bytes + CreatedAt uint64 `protobuf:"varint,6,opt,name=created_at,json=createdAt,proto3" json:"created_at,omitempty"` // Time of asset creation (UTC seconds epoch) + UpdatedAt uint64 `protobuf:"varint,7,opt,name=updated_at,json=updatedAt,proto3" json:"updated_at,omitempty"` // Time of last asset update (UTC seconds epoch) + Request *v1.Request `protobuf:"bytes,8,opt,name=request,proto3" json:"request,omitempty"` // The request object that is associated with the artifact + Tags map[string]string `protobuf:"bytes,9,rep,name=tags,proto3" json:"tags,omitempty" protobuf_key:"bytes,1,opt,name=key,proto3" protobuf_val:"bytes,2,opt,name=value,proto3"` // The tags associated with the asset +} + +func (x *ProjectAsset) Reset() { + *x = ProjectAsset{} + if protoimpl.UnsafeEnabled { + mi := &file_stability_api_platform_project_v1_project_proto_msgTypes[0] + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + ms.StoreMessageInfo(mi) + } +} + +func (x *ProjectAsset) String() string { + return protoimpl.X.MessageStringOf(x) +} + +func (*ProjectAsset) ProtoMessage() {} + +func (x *ProjectAsset) ProtoReflect() protoreflect.Message { + mi := &file_stability_api_platform_project_v1_project_proto_msgTypes[0] + if protoimpl.UnsafeEnabled && x != nil { + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + if ms.LoadMessageInfo() == nil { + ms.StoreMessageInfo(mi) + } + return ms + } + return mi.MessageOf(x) +} + +// Deprecated: Use ProjectAsset.ProtoReflect.Descriptor instead. +func (*ProjectAsset) Descriptor() ([]byte, []int) { + return file_stability_api_platform_project_v1_project_proto_rawDescGZIP(), []int{0} +} + +func (x *ProjectAsset) GetId() string { + if x != nil { + return x.Id + } + return "" +} + +func (x *ProjectAsset) GetUri() string { + if x != nil { + return x.Uri + } + return "" +} + +func (x *ProjectAsset) GetUse() ProjectAssetUse { + if x != nil { + return x.Use + } + return ProjectAssetUse_PROJECT_ASSET_USE_UNDEFINED +} + +func (x *ProjectAsset) GetName() string { + if x != nil { + return x.Name + } + return "" +} + +func (x *ProjectAsset) GetSize() uint64 { + if x != nil { + return x.Size + } + return 0 +} + +func (x *ProjectAsset) GetCreatedAt() uint64 { + if x != nil { + return x.CreatedAt + } + return 0 +} + +func (x *ProjectAsset) GetUpdatedAt() uint64 { + if x != nil { + return x.UpdatedAt + } + return 0 +} + +func (x *ProjectAsset) GetRequest() *v1.Request { + if x != nil { + return x.Request + } + return nil +} + +func (x *ProjectAsset) GetTags() map[string]string { + if x != nil { + return x.Tags + } + return nil +} + +type Project struct { + state protoimpl.MessageState + sizeCache protoimpl.SizeCache + unknownFields protoimpl.UnknownFields + + Id string `protobuf:"bytes,1,opt,name=id,proto3" json:"id,omitempty"` // ID of the project, UUIDv4 + Title string `protobuf:"bytes,2,opt,name=title,proto3" json:"title,omitempty"` // Title of the project + OwnerId string `protobuf:"bytes,3,opt,name=owner_id,json=ownerId,proto3" json:"owner_id,omitempty"` // The ID of the organization owning the project + Access ProjectAccess `protobuf:"varint,4,opt,name=access,proto3,enum=stabilityai.platformapis.project.v1.ProjectAccess" json:"access,omitempty"` // The access of the project (such as public vs private) + Status ProjectStatus `protobuf:"varint,5,opt,name=status,proto3,enum=stabilityai.platformapis.project.v1.ProjectStatus" json:"status,omitempty"` // The status of the project (such as active vs inactive) + Size uint64 `protobuf:"varint,6,opt,name=size,proto3" json:"size,omitempty"` // The size of the project in bytes + File *ProjectAsset `protobuf:"bytes,7,opt,name=file,proto3" json:"file,omitempty"` // Project file for the project + CreatedAt uint64 `protobuf:"varint,8,opt,name=created_at,json=createdAt,proto3" json:"created_at,omitempty"` // Time of project creation (UTC seconds epoch) + UpdatedAt uint64 `protobuf:"varint,9,opt,name=updated_at,json=updatedAt,proto3" json:"updated_at,omitempty"` // Time of last project update (UTC seconds epoch) + Assets []*ProjectAsset `protobuf:"bytes,10,rep,name=assets,proto3" json:"assets,omitempty"` // The listing of all assets associated with the project + Type ProjectType `protobuf:"varint,11,opt,name=type,proto3,enum=stabilityai.platformapis.project.v1.ProjectType" json:"type,omitempty"` // The type of project +} + +func (x *Project) Reset() { + *x = Project{} + if protoimpl.UnsafeEnabled { + mi := &file_stability_api_platform_project_v1_project_proto_msgTypes[1] + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + ms.StoreMessageInfo(mi) + } +} + +func (x *Project) String() string { + return protoimpl.X.MessageStringOf(x) +} + +func (*Project) ProtoMessage() {} + +func (x *Project) ProtoReflect() protoreflect.Message { + mi := &file_stability_api_platform_project_v1_project_proto_msgTypes[1] + if protoimpl.UnsafeEnabled && x != nil { + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + if ms.LoadMessageInfo() == nil { + ms.StoreMessageInfo(mi) + } + return ms + } + return mi.MessageOf(x) +} + +// Deprecated: Use Project.ProtoReflect.Descriptor instead. +func (*Project) Descriptor() ([]byte, []int) { + return file_stability_api_platform_project_v1_project_proto_rawDescGZIP(), []int{1} +} + +func (x *Project) GetId() string { + if x != nil { + return x.Id + } + return "" +} + +func (x *Project) GetTitle() string { + if x != nil { + return x.Title + } + return "" +} + +func (x *Project) GetOwnerId() string { + if x != nil { + return x.OwnerId + } + return "" +} + +func (x *Project) GetAccess() ProjectAccess { + if x != nil { + return x.Access + } + return ProjectAccess_PROJECT_ACCESS_PRIVATE +} + +func (x *Project) GetStatus() ProjectStatus { + if x != nil { + return x.Status + } + return ProjectStatus_PROJECT_STATUS_INACTIVE +} + +func (x *Project) GetSize() uint64 { + if x != nil { + return x.Size + } + return 0 +} + +func (x *Project) GetFile() *ProjectAsset { + if x != nil { + return x.File + } + return nil +} + +func (x *Project) GetCreatedAt() uint64 { + if x != nil { + return x.CreatedAt + } + return 0 +} + +func (x *Project) GetUpdatedAt() uint64 { + if x != nil { + return x.UpdatedAt + } + return 0 +} + +func (x *Project) GetAssets() []*ProjectAsset { + if x != nil { + return x.Assets + } + return nil +} + +func (x *Project) GetType() ProjectType { + if x != nil { + return x.Type + } + return ProjectType_PROJECT_TYPE_UNSPECIFIED +} + +type CreateProjectRequest struct { + state protoimpl.MessageState + sizeCache protoimpl.SizeCache + unknownFields protoimpl.UnknownFields + + Title string `protobuf:"bytes,1,opt,name=title,proto3" json:"title,omitempty"` // title of the project + OwnerId *string `protobuf:"bytes,2,opt,name=owner_id,json=ownerId,proto3,oneof" json:"owner_id,omitempty"` // The ID of the organization owning the project, empty for default org for user + Access ProjectAccess `protobuf:"varint,3,opt,name=access,proto3,enum=stabilityai.platformapis.project.v1.ProjectAccess" json:"access,omitempty"` // The access of the project (such as public vs private) + Status ProjectStatus `protobuf:"varint,4,opt,name=status,proto3,enum=stabilityai.platformapis.project.v1.ProjectStatus" json:"status,omitempty"` // The status of the project (such as active vs inactive) + File *ProjectAsset `protobuf:"bytes,5,opt,name=file,proto3,oneof" json:"file,omitempty"` // Project file for the project (if existing, else will create) + Type ProjectType `protobuf:"varint,6,opt,name=type,proto3,enum=stabilityai.platformapis.project.v1.ProjectType" json:"type,omitempty"` // The type of project +} + +func (x *CreateProjectRequest) Reset() { + *x = CreateProjectRequest{} + if protoimpl.UnsafeEnabled { + mi := &file_stability_api_platform_project_v1_project_proto_msgTypes[2] + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + ms.StoreMessageInfo(mi) + } +} + +func (x *CreateProjectRequest) String() string { + return protoimpl.X.MessageStringOf(x) +} + +func (*CreateProjectRequest) ProtoMessage() {} + +func (x *CreateProjectRequest) ProtoReflect() protoreflect.Message { + mi := &file_stability_api_platform_project_v1_project_proto_msgTypes[2] + if protoimpl.UnsafeEnabled && x != nil { + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + if ms.LoadMessageInfo() == nil { + ms.StoreMessageInfo(mi) + } + return ms + } + return mi.MessageOf(x) +} + +// Deprecated: Use CreateProjectRequest.ProtoReflect.Descriptor instead. +func (*CreateProjectRequest) Descriptor() ([]byte, []int) { + return file_stability_api_platform_project_v1_project_proto_rawDescGZIP(), []int{2} +} + +func (x *CreateProjectRequest) GetTitle() string { + if x != nil { + return x.Title + } + return "" +} + +func (x *CreateProjectRequest) GetOwnerId() string { + if x != nil && x.OwnerId != nil { + return *x.OwnerId + } + return "" +} + +func (x *CreateProjectRequest) GetAccess() ProjectAccess { + if x != nil { + return x.Access + } + return ProjectAccess_PROJECT_ACCESS_PRIVATE +} + +func (x *CreateProjectRequest) GetStatus() ProjectStatus { + if x != nil { + return x.Status + } + return ProjectStatus_PROJECT_STATUS_INACTIVE +} + +func (x *CreateProjectRequest) GetFile() *ProjectAsset { + if x != nil { + return x.File + } + return nil +} + +func (x *CreateProjectRequest) GetType() ProjectType { + if x != nil { + return x.Type + } + return ProjectType_PROJECT_TYPE_UNSPECIFIED +} + +type UpdateProjectRequest struct { + state protoimpl.MessageState + sizeCache protoimpl.SizeCache + unknownFields protoimpl.UnknownFields + + Id string `protobuf:"bytes,1,opt,name=id,proto3" json:"id,omitempty"` // ID of the project, UUIDv4 + OwnerId *string `protobuf:"bytes,2,opt,name=owner_id,json=ownerId,proto3,oneof" json:"owner_id,omitempty"` // The ID of the organization owning the project, empty for default org for user + Title *string `protobuf:"bytes,3,opt,name=title,proto3,oneof" json:"title,omitempty"` // Title of the project + Access *ProjectAccess `protobuf:"varint,4,opt,name=access,proto3,enum=stabilityai.platformapis.project.v1.ProjectAccess,oneof" json:"access,omitempty"` // The access of the project (such as public vs private) + Status *ProjectStatus `protobuf:"varint,5,opt,name=status,proto3,enum=stabilityai.platformapis.project.v1.ProjectStatus,oneof" json:"status,omitempty"` // The status of the project (such as active vs inactive) + File *ProjectAsset `protobuf:"bytes,6,opt,name=file,proto3,oneof" json:"file,omitempty"` // Project file for the project + Type *ProjectType `protobuf:"varint,7,opt,name=type,proto3,enum=stabilityai.platformapis.project.v1.ProjectType,oneof" json:"type,omitempty"` // The type of project +} + +func (x *UpdateProjectRequest) Reset() { + *x = UpdateProjectRequest{} + if protoimpl.UnsafeEnabled { + mi := &file_stability_api_platform_project_v1_project_proto_msgTypes[3] + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + ms.StoreMessageInfo(mi) + } +} + +func (x *UpdateProjectRequest) String() string { + return protoimpl.X.MessageStringOf(x) +} + +func (*UpdateProjectRequest) ProtoMessage() {} + +func (x *UpdateProjectRequest) ProtoReflect() protoreflect.Message { + mi := &file_stability_api_platform_project_v1_project_proto_msgTypes[3] + if protoimpl.UnsafeEnabled && x != nil { + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + if ms.LoadMessageInfo() == nil { + ms.StoreMessageInfo(mi) + } + return ms + } + return mi.MessageOf(x) +} + +// Deprecated: Use UpdateProjectRequest.ProtoReflect.Descriptor instead. +func (*UpdateProjectRequest) Descriptor() ([]byte, []int) { + return file_stability_api_platform_project_v1_project_proto_rawDescGZIP(), []int{3} +} + +func (x *UpdateProjectRequest) GetId() string { + if x != nil { + return x.Id + } + return "" +} + +func (x *UpdateProjectRequest) GetOwnerId() string { + if x != nil && x.OwnerId != nil { + return *x.OwnerId + } + return "" +} + +func (x *UpdateProjectRequest) GetTitle() string { + if x != nil && x.Title != nil { + return *x.Title + } + return "" +} + +func (x *UpdateProjectRequest) GetAccess() ProjectAccess { + if x != nil && x.Access != nil { + return *x.Access + } + return ProjectAccess_PROJECT_ACCESS_PRIVATE +} + +func (x *UpdateProjectRequest) GetStatus() ProjectStatus { + if x != nil && x.Status != nil { + return *x.Status + } + return ProjectStatus_PROJECT_STATUS_INACTIVE +} + +func (x *UpdateProjectRequest) GetFile() *ProjectAsset { + if x != nil { + return x.File + } + return nil +} + +func (x *UpdateProjectRequest) GetType() ProjectType { + if x != nil && x.Type != nil { + return *x.Type + } + return ProjectType_PROJECT_TYPE_UNSPECIFIED +} + +type ListProjectRequest struct { + state protoimpl.MessageState + sizeCache protoimpl.SizeCache + unknownFields protoimpl.UnknownFields + + OwnerId *string `protobuf:"bytes,1,opt,name=owner_id,json=ownerId,proto3,oneof" json:"owner_id,omitempty"` // The ID of the organization owning the project, empty for default org for user +} + +func (x *ListProjectRequest) Reset() { + *x = ListProjectRequest{} + if protoimpl.UnsafeEnabled { + mi := &file_stability_api_platform_project_v1_project_proto_msgTypes[4] + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + ms.StoreMessageInfo(mi) + } +} + +func (x *ListProjectRequest) String() string { + return protoimpl.X.MessageStringOf(x) +} + +func (*ListProjectRequest) ProtoMessage() {} + +func (x *ListProjectRequest) ProtoReflect() protoreflect.Message { + mi := &file_stability_api_platform_project_v1_project_proto_msgTypes[4] + if protoimpl.UnsafeEnabled && x != nil { + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + if ms.LoadMessageInfo() == nil { + ms.StoreMessageInfo(mi) + } + return ms + } + return mi.MessageOf(x) +} + +// Deprecated: Use ListProjectRequest.ProtoReflect.Descriptor instead. +func (*ListProjectRequest) Descriptor() ([]byte, []int) { + return file_stability_api_platform_project_v1_project_proto_rawDescGZIP(), []int{4} +} + +func (x *ListProjectRequest) GetOwnerId() string { + if x != nil && x.OwnerId != nil { + return *x.OwnerId + } + return "" +} + +type GetProjectRequest struct { + state protoimpl.MessageState + sizeCache protoimpl.SizeCache + unknownFields protoimpl.UnknownFields + + Id string `protobuf:"bytes,1,opt,name=id,proto3" json:"id,omitempty"` // ID of the project to request, UUIDv4, empty string uses default project + OwnerId *string `protobuf:"bytes,2,opt,name=owner_id,json=ownerId,proto3,oneof" json:"owner_id,omitempty"` // The ID of the organization owning the project, empty for default org for user +} + +func (x *GetProjectRequest) Reset() { + *x = GetProjectRequest{} + if protoimpl.UnsafeEnabled { + mi := &file_stability_api_platform_project_v1_project_proto_msgTypes[5] + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + ms.StoreMessageInfo(mi) + } +} + +func (x *GetProjectRequest) String() string { + return protoimpl.X.MessageStringOf(x) +} + +func (*GetProjectRequest) ProtoMessage() {} + +func (x *GetProjectRequest) ProtoReflect() protoreflect.Message { + mi := &file_stability_api_platform_project_v1_project_proto_msgTypes[5] + if protoimpl.UnsafeEnabled && x != nil { + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + if ms.LoadMessageInfo() == nil { + ms.StoreMessageInfo(mi) + } + return ms + } + return mi.MessageOf(x) +} + +// Deprecated: Use GetProjectRequest.ProtoReflect.Descriptor instead. +func (*GetProjectRequest) Descriptor() ([]byte, []int) { + return file_stability_api_platform_project_v1_project_proto_rawDescGZIP(), []int{5} +} + +func (x *GetProjectRequest) GetId() string { + if x != nil { + return x.Id + } + return "" +} + +func (x *GetProjectRequest) GetOwnerId() string { + if x != nil && x.OwnerId != nil { + return *x.OwnerId + } + return "" +} + +type DeleteProjectRequest struct { + state protoimpl.MessageState + sizeCache protoimpl.SizeCache + unknownFields protoimpl.UnknownFields + + Id string `protobuf:"bytes,1,opt,name=id,proto3" json:"id,omitempty"` // ID of the project to request, UUIDv4 + OwnerId *string `protobuf:"bytes,2,opt,name=owner_id,json=ownerId,proto3,oneof" json:"owner_id,omitempty"` // The ID of the organization owning the project, empty for default org for user +} + +func (x *DeleteProjectRequest) Reset() { + *x = DeleteProjectRequest{} + if protoimpl.UnsafeEnabled { + mi := &file_stability_api_platform_project_v1_project_proto_msgTypes[6] + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + ms.StoreMessageInfo(mi) + } +} + +func (x *DeleteProjectRequest) String() string { + return protoimpl.X.MessageStringOf(x) +} + +func (*DeleteProjectRequest) ProtoMessage() {} + +func (x *DeleteProjectRequest) ProtoReflect() protoreflect.Message { + mi := &file_stability_api_platform_project_v1_project_proto_msgTypes[6] + if protoimpl.UnsafeEnabled && x != nil { + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + if ms.LoadMessageInfo() == nil { + ms.StoreMessageInfo(mi) + } + return ms + } + return mi.MessageOf(x) +} + +// Deprecated: Use DeleteProjectRequest.ProtoReflect.Descriptor instead. +func (*DeleteProjectRequest) Descriptor() ([]byte, []int) { + return file_stability_api_platform_project_v1_project_proto_rawDescGZIP(), []int{6} +} + +func (x *DeleteProjectRequest) GetId() string { + if x != nil { + return x.Id + } + return "" +} + +func (x *DeleteProjectRequest) GetOwnerId() string { + if x != nil && x.OwnerId != nil { + return *x.OwnerId + } + return "" +} + +type QueryAssetsRequest struct { + state protoimpl.MessageState + sizeCache protoimpl.SizeCache + unknownFields protoimpl.UnknownFields + + Id string `protobuf:"bytes,1,opt,name=id,proto3" json:"id,omitempty"` // ID of the project to request, UUIDv4, empty string uses default project + OwnerId *string `protobuf:"bytes,2,opt,name=owner_id,json=ownerId,proto3,oneof" json:"owner_id,omitempty"` // The ID of the organization owning the assets, unset for default org for user + Since *uint64 `protobuf:"varint,3,opt,name=since,proto3,oneof" json:"since,omitempty"` // The time (UTC seconds epoch) to start listing assets from, unset for no restriction + Until *uint64 `protobuf:"varint,4,opt,name=until,proto3,oneof" json:"until,omitempty"` // The time (UTC seconds epoch) to stop listing assets at, unset for no restriction + Limit *uint64 `protobuf:"varint,5,opt,name=limit,proto3,oneof" json:"limit,omitempty"` // The maximum number of assets to return, unset for no limit + StartKey *string `protobuf:"bytes,6,opt,name=start_key,json=startKey,proto3,oneof" json:"start_key,omitempty"` // The key to start from, used to paginate results, unset for no offset + Use []ProjectAssetUse `protobuf:"varint,7,rep,packed,name=use,proto3,enum=stabilityai.platformapis.project.v1.ProjectAssetUse" json:"use,omitempty"` // The asset usage to filter the assets returned, empty for no filter + SortDir ProjectSortDir `protobuf:"varint,8,opt,name=sort_dir,json=sortDir,proto3,enum=stabilityai.platformapis.project.v1.ProjectSortDir" json:"sort_dir,omitempty"` // The sort direction based on asset creation time, default is descending + Tags map[string]string `protobuf:"bytes,9,rep,name=tags,proto3" json:"tags,omitempty" protobuf_key:"bytes,1,opt,name=key,proto3" protobuf_val:"bytes,2,opt,name=value,proto3"` // The tag values used to filter the assets returned, empty for no filter +} + +func (x *QueryAssetsRequest) Reset() { + *x = QueryAssetsRequest{} + if protoimpl.UnsafeEnabled { + mi := &file_stability_api_platform_project_v1_project_proto_msgTypes[7] + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + ms.StoreMessageInfo(mi) + } +} + +func (x *QueryAssetsRequest) String() string { + return protoimpl.X.MessageStringOf(x) +} + +func (*QueryAssetsRequest) ProtoMessage() {} + +func (x *QueryAssetsRequest) ProtoReflect() protoreflect.Message { + mi := &file_stability_api_platform_project_v1_project_proto_msgTypes[7] + if protoimpl.UnsafeEnabled && x != nil { + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + if ms.LoadMessageInfo() == nil { + ms.StoreMessageInfo(mi) + } + return ms + } + return mi.MessageOf(x) +} + +// Deprecated: Use QueryAssetsRequest.ProtoReflect.Descriptor instead. +func (*QueryAssetsRequest) Descriptor() ([]byte, []int) { + return file_stability_api_platform_project_v1_project_proto_rawDescGZIP(), []int{7} +} + +func (x *QueryAssetsRequest) GetId() string { + if x != nil { + return x.Id + } + return "" +} + +func (x *QueryAssetsRequest) GetOwnerId() string { + if x != nil && x.OwnerId != nil { + return *x.OwnerId + } + return "" +} + +func (x *QueryAssetsRequest) GetSince() uint64 { + if x != nil && x.Since != nil { + return *x.Since + } + return 0 +} + +func (x *QueryAssetsRequest) GetUntil() uint64 { + if x != nil && x.Until != nil { + return *x.Until + } + return 0 +} + +func (x *QueryAssetsRequest) GetLimit() uint64 { + if x != nil && x.Limit != nil { + return *x.Limit + } + return 0 +} + +func (x *QueryAssetsRequest) GetStartKey() string { + if x != nil && x.StartKey != nil { + return *x.StartKey + } + return "" +} + +func (x *QueryAssetsRequest) GetUse() []ProjectAssetUse { + if x != nil { + return x.Use + } + return nil +} + +func (x *QueryAssetsRequest) GetSortDir() ProjectSortDir { + if x != nil { + return x.SortDir + } + return ProjectSortDir_PROJECT_SORT_DIR_UNSPECIFIED +} + +func (x *QueryAssetsRequest) GetTags() map[string]string { + if x != nil { + return x.Tags + } + return nil +} + +type QueryAssetsResponse struct { + state protoimpl.MessageState + sizeCache protoimpl.SizeCache + unknownFields protoimpl.UnknownFields + + Assets []*ProjectAsset `protobuf:"bytes,1,rep,name=assets,proto3" json:"assets,omitempty"` // The assets returned by the query + LastKey *string `protobuf:"bytes,2,opt,name=last_key,json=lastKey,proto3,oneof" json:"last_key,omitempty"` // The last asset key returned when the results were limited, unset when not limited +} + +func (x *QueryAssetsResponse) Reset() { + *x = QueryAssetsResponse{} + if protoimpl.UnsafeEnabled { + mi := &file_stability_api_platform_project_v1_project_proto_msgTypes[8] + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + ms.StoreMessageInfo(mi) + } +} + +func (x *QueryAssetsResponse) String() string { + return protoimpl.X.MessageStringOf(x) +} + +func (*QueryAssetsResponse) ProtoMessage() {} + +func (x *QueryAssetsResponse) ProtoReflect() protoreflect.Message { + mi := &file_stability_api_platform_project_v1_project_proto_msgTypes[8] + if protoimpl.UnsafeEnabled && x != nil { + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + if ms.LoadMessageInfo() == nil { + ms.StoreMessageInfo(mi) + } + return ms + } + return mi.MessageOf(x) +} + +// Deprecated: Use QueryAssetsResponse.ProtoReflect.Descriptor instead. +func (*QueryAssetsResponse) Descriptor() ([]byte, []int) { + return file_stability_api_platform_project_v1_project_proto_rawDescGZIP(), []int{8} +} + +func (x *QueryAssetsResponse) GetAssets() []*ProjectAsset { + if x != nil { + return x.Assets + } + return nil +} + +func (x *QueryAssetsResponse) GetLastKey() string { + if x != nil && x.LastKey != nil { + return *x.LastKey + } + return "" +} + +type TagAssetsRequest struct { + state protoimpl.MessageState + sizeCache protoimpl.SizeCache + unknownFields protoimpl.UnknownFields + + Id string `protobuf:"bytes,1,opt,name=id,proto3" json:"id,omitempty"` // ID of the project to request, UUIDv4, empty string uses default project + OwnerId *string `protobuf:"bytes,2,opt,name=owner_id,json=ownerId,proto3,oneof" json:"owner_id,omitempty"` // The ID of the organization owning the assets, unset for default org for user + AssetIds []string `protobuf:"bytes,3,rep,name=asset_ids,json=assetIds,proto3" json:"asset_ids,omitempty"` // The IDs of the assets to tag in the project, UUIDv4, limit 1000 + Tags map[string]string `protobuf:"bytes,4,rep,name=tags,proto3" json:"tags,omitempty" protobuf_key:"bytes,1,opt,name=key,proto3" protobuf_val:"bytes,2,opt,name=value,proto3"` // The tags to add to the assets +} + +func (x *TagAssetsRequest) Reset() { + *x = TagAssetsRequest{} + if protoimpl.UnsafeEnabled { + mi := &file_stability_api_platform_project_v1_project_proto_msgTypes[9] + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + ms.StoreMessageInfo(mi) + } +} + +func (x *TagAssetsRequest) String() string { + return protoimpl.X.MessageStringOf(x) +} + +func (*TagAssetsRequest) ProtoMessage() {} + +func (x *TagAssetsRequest) ProtoReflect() protoreflect.Message { + mi := &file_stability_api_platform_project_v1_project_proto_msgTypes[9] + if protoimpl.UnsafeEnabled && x != nil { + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + if ms.LoadMessageInfo() == nil { + ms.StoreMessageInfo(mi) + } + return ms + } + return mi.MessageOf(x) +} + +// Deprecated: Use TagAssetsRequest.ProtoReflect.Descriptor instead. +func (*TagAssetsRequest) Descriptor() ([]byte, []int) { + return file_stability_api_platform_project_v1_project_proto_rawDescGZIP(), []int{9} +} + +func (x *TagAssetsRequest) GetId() string { + if x != nil { + return x.Id + } + return "" +} + +func (x *TagAssetsRequest) GetOwnerId() string { + if x != nil && x.OwnerId != nil { + return *x.OwnerId + } + return "" +} + +func (x *TagAssetsRequest) GetAssetIds() []string { + if x != nil { + return x.AssetIds + } + return nil +} + +func (x *TagAssetsRequest) GetTags() map[string]string { + if x != nil { + return x.Tags + } + return nil +} + +type TagAssetsResponse struct { + state protoimpl.MessageState + sizeCache protoimpl.SizeCache + unknownFields protoimpl.UnknownFields + + Id string `protobuf:"bytes,1,opt,name=id,proto3" json:"id,omitempty"` // ID of the project, UUIDv4 + OwnerId string `protobuf:"bytes,2,opt,name=owner_id,json=ownerId,proto3" json:"owner_id,omitempty"` // The ID of the organization owning the project + AssetIds []string `protobuf:"bytes,3,rep,name=asset_ids,json=assetIds,proto3" json:"asset_ids,omitempty"` // The IDs of the assets updated in the project, UUIDv4, limit 1000 +} + +func (x *TagAssetsResponse) Reset() { + *x = TagAssetsResponse{} + if protoimpl.UnsafeEnabled { + mi := &file_stability_api_platform_project_v1_project_proto_msgTypes[10] + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + ms.StoreMessageInfo(mi) + } +} + +func (x *TagAssetsResponse) String() string { + return protoimpl.X.MessageStringOf(x) +} + +func (*TagAssetsResponse) ProtoMessage() {} + +func (x *TagAssetsResponse) ProtoReflect() protoreflect.Message { + mi := &file_stability_api_platform_project_v1_project_proto_msgTypes[10] + if protoimpl.UnsafeEnabled && x != nil { + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + if ms.LoadMessageInfo() == nil { + ms.StoreMessageInfo(mi) + } + return ms + } + return mi.MessageOf(x) +} + +// Deprecated: Use TagAssetsResponse.ProtoReflect.Descriptor instead. +func (*TagAssetsResponse) Descriptor() ([]byte, []int) { + return file_stability_api_platform_project_v1_project_proto_rawDescGZIP(), []int{10} +} + +func (x *TagAssetsResponse) GetId() string { + if x != nil { + return x.Id + } + return "" +} + +func (x *TagAssetsResponse) GetOwnerId() string { + if x != nil { + return x.OwnerId + } + return "" +} + +func (x *TagAssetsResponse) GetAssetIds() []string { + if x != nil { + return x.AssetIds + } + return nil +} + +type UntagAssetsRequest struct { + state protoimpl.MessageState + sizeCache protoimpl.SizeCache + unknownFields protoimpl.UnknownFields + + Id string `protobuf:"bytes,1,opt,name=id,proto3" json:"id,omitempty"` // ID of the project to request, UUIDv4, empty string uses default project + OwnerId *string `protobuf:"bytes,2,opt,name=owner_id,json=ownerId,proto3,oneof" json:"owner_id,omitempty"` // The ID of the organization owning the assets, unset for default org for user + AssetIds []string `protobuf:"bytes,3,rep,name=asset_ids,json=assetIds,proto3" json:"asset_ids,omitempty"` // The IDs of the assets to tag in the project, UUIDv4, limit 1000 + TagKeys []string `protobuf:"bytes,4,rep,name=tag_keys,json=tagKeys,proto3" json:"tag_keys,omitempty"` // The keys of the tags to remove from the assets +} + +func (x *UntagAssetsRequest) Reset() { + *x = UntagAssetsRequest{} + if protoimpl.UnsafeEnabled { + mi := &file_stability_api_platform_project_v1_project_proto_msgTypes[11] + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + ms.StoreMessageInfo(mi) + } +} + +func (x *UntagAssetsRequest) String() string { + return protoimpl.X.MessageStringOf(x) +} + +func (*UntagAssetsRequest) ProtoMessage() {} + +func (x *UntagAssetsRequest) ProtoReflect() protoreflect.Message { + mi := &file_stability_api_platform_project_v1_project_proto_msgTypes[11] + if protoimpl.UnsafeEnabled && x != nil { + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + if ms.LoadMessageInfo() == nil { + ms.StoreMessageInfo(mi) + } + return ms + } + return mi.MessageOf(x) +} + +// Deprecated: Use UntagAssetsRequest.ProtoReflect.Descriptor instead. +func (*UntagAssetsRequest) Descriptor() ([]byte, []int) { + return file_stability_api_platform_project_v1_project_proto_rawDescGZIP(), []int{11} +} + +func (x *UntagAssetsRequest) GetId() string { + if x != nil { + return x.Id + } + return "" +} + +func (x *UntagAssetsRequest) GetOwnerId() string { + if x != nil && x.OwnerId != nil { + return *x.OwnerId + } + return "" +} + +func (x *UntagAssetsRequest) GetAssetIds() []string { + if x != nil { + return x.AssetIds + } + return nil +} + +func (x *UntagAssetsRequest) GetTagKeys() []string { + if x != nil { + return x.TagKeys + } + return nil +} + +type UntagAssetsResponse struct { + state protoimpl.MessageState + sizeCache protoimpl.SizeCache + unknownFields protoimpl.UnknownFields + + Id string `protobuf:"bytes,1,opt,name=id,proto3" json:"id,omitempty"` // ID of the project, UUIDv4 + OwnerId string `protobuf:"bytes,2,opt,name=owner_id,json=ownerId,proto3" json:"owner_id,omitempty"` // The ID of the organization owning the project + AssetIds []string `protobuf:"bytes,3,rep,name=asset_ids,json=assetIds,proto3" json:"asset_ids,omitempty"` // The IDs of the assets updated in the project, UUIDv4, limit 1000 +} + +func (x *UntagAssetsResponse) Reset() { + *x = UntagAssetsResponse{} + if protoimpl.UnsafeEnabled { + mi := &file_stability_api_platform_project_v1_project_proto_msgTypes[12] + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + ms.StoreMessageInfo(mi) + } +} + +func (x *UntagAssetsResponse) String() string { + return protoimpl.X.MessageStringOf(x) +} + +func (*UntagAssetsResponse) ProtoMessage() {} + +func (x *UntagAssetsResponse) ProtoReflect() protoreflect.Message { + mi := &file_stability_api_platform_project_v1_project_proto_msgTypes[12] + if protoimpl.UnsafeEnabled && x != nil { + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + if ms.LoadMessageInfo() == nil { + ms.StoreMessageInfo(mi) + } + return ms + } + return mi.MessageOf(x) +} + +// Deprecated: Use UntagAssetsResponse.ProtoReflect.Descriptor instead. +func (*UntagAssetsResponse) Descriptor() ([]byte, []int) { + return file_stability_api_platform_project_v1_project_proto_rawDescGZIP(), []int{12} +} + +func (x *UntagAssetsResponse) GetId() string { + if x != nil { + return x.Id + } + return "" +} + +func (x *UntagAssetsResponse) GetOwnerId() string { + if x != nil { + return x.OwnerId + } + return "" +} + +func (x *UntagAssetsResponse) GetAssetIds() []string { + if x != nil { + return x.AssetIds + } + return nil +} + +type DeleteAssetsRequest struct { + state protoimpl.MessageState + sizeCache protoimpl.SizeCache + unknownFields protoimpl.UnknownFields + + Id string `protobuf:"bytes,1,opt,name=id,proto3" json:"id,omitempty"` // ID of the project to request, UUIDv4, empty string uses default project + OwnerId *string `protobuf:"bytes,2,opt,name=owner_id,json=ownerId,proto3,oneof" json:"owner_id,omitempty"` // The ID of the organization owning the project, unset for default org for user + AssetIds []string `protobuf:"bytes,3,rep,name=asset_ids,json=assetIds,proto3" json:"asset_ids,omitempty"` // The IDs of the assets to delete from the project, UUIDv4, limit 1000 +} + +func (x *DeleteAssetsRequest) Reset() { + *x = DeleteAssetsRequest{} + if protoimpl.UnsafeEnabled { + mi := &file_stability_api_platform_project_v1_project_proto_msgTypes[13] + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + ms.StoreMessageInfo(mi) + } +} + +func (x *DeleteAssetsRequest) String() string { + return protoimpl.X.MessageStringOf(x) +} + +func (*DeleteAssetsRequest) ProtoMessage() {} + +func (x *DeleteAssetsRequest) ProtoReflect() protoreflect.Message { + mi := &file_stability_api_platform_project_v1_project_proto_msgTypes[13] + if protoimpl.UnsafeEnabled && x != nil { + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + if ms.LoadMessageInfo() == nil { + ms.StoreMessageInfo(mi) + } + return ms + } + return mi.MessageOf(x) +} + +// Deprecated: Use DeleteAssetsRequest.ProtoReflect.Descriptor instead. +func (*DeleteAssetsRequest) Descriptor() ([]byte, []int) { + return file_stability_api_platform_project_v1_project_proto_rawDescGZIP(), []int{13} +} + +func (x *DeleteAssetsRequest) GetId() string { + if x != nil { + return x.Id + } + return "" +} + +func (x *DeleteAssetsRequest) GetOwnerId() string { + if x != nil && x.OwnerId != nil { + return *x.OwnerId + } + return "" +} + +func (x *DeleteAssetsRequest) GetAssetIds() []string { + if x != nil { + return x.AssetIds + } + return nil +} + +type DeleteAssetsResponse struct { + state protoimpl.MessageState + sizeCache protoimpl.SizeCache + unknownFields protoimpl.UnknownFields + + Id string `protobuf:"bytes,1,opt,name=id,proto3" json:"id,omitempty"` // ID of the project, UUIDv4 + OwnerId string `protobuf:"bytes,2,opt,name=owner_id,json=ownerId,proto3" json:"owner_id,omitempty"` // The ID of the organization owning the project + AssetIds []string `protobuf:"bytes,3,rep,name=asset_ids,json=assetIds,proto3" json:"asset_ids,omitempty"` // The IDs of the assets deleted from the project, UUIDv4, limit 1000 +} + +func (x *DeleteAssetsResponse) Reset() { + *x = DeleteAssetsResponse{} + if protoimpl.UnsafeEnabled { + mi := &file_stability_api_platform_project_v1_project_proto_msgTypes[14] + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + ms.StoreMessageInfo(mi) + } +} + +func (x *DeleteAssetsResponse) String() string { + return protoimpl.X.MessageStringOf(x) +} + +func (*DeleteAssetsResponse) ProtoMessage() {} + +func (x *DeleteAssetsResponse) ProtoReflect() protoreflect.Message { + mi := &file_stability_api_platform_project_v1_project_proto_msgTypes[14] + if protoimpl.UnsafeEnabled && x != nil { + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + if ms.LoadMessageInfo() == nil { + ms.StoreMessageInfo(mi) + } + return ms + } + return mi.MessageOf(x) +} + +// Deprecated: Use DeleteAssetsResponse.ProtoReflect.Descriptor instead. +func (*DeleteAssetsResponse) Descriptor() ([]byte, []int) { + return file_stability_api_platform_project_v1_project_proto_rawDescGZIP(), []int{14} +} + +func (x *DeleteAssetsResponse) GetId() string { + if x != nil { + return x.Id + } + return "" +} + +func (x *DeleteAssetsResponse) GetOwnerId() string { + if x != nil { + return x.OwnerId + } + return "" +} + +func (x *DeleteAssetsResponse) GetAssetIds() []string { + if x != nil { + return x.AssetIds + } + return nil +} + +var File_stability_api_platform_project_v1_project_proto protoreflect.FileDescriptor + +var file_stability_api_platform_project_v1_project_proto_rawDesc = []byte{ + 0x0a, 0x2f, 0x73, 0x74, 0x61, 0x62, 0x69, 0x6c, 0x69, 0x74, 0x79, 0x5f, 0x61, 0x70, 0x69, 0x2f, + 0x70, 0x6c, 0x61, 0x74, 0x66, 0x6f, 0x72, 0x6d, 0x2f, 0x70, 0x72, 0x6f, 0x6a, 0x65, 0x63, 0x74, + 0x2f, 0x76, 0x31, 0x2f, 0x70, 0x72, 0x6f, 0x6a, 0x65, 0x63, 0x74, 0x2e, 0x70, 0x72, 0x6f, 0x74, + 0x6f, 0x12, 0x23, 0x73, 0x74, 0x61, 0x62, 0x69, 0x6c, 0x69, 0x74, 0x79, 0x61, 0x69, 0x2e, 0x70, + 0x6c, 0x61, 0x74, 0x66, 0x6f, 0x72, 0x6d, 0x61, 0x70, 0x69, 0x73, 0x2e, 0x70, 0x72, 0x6f, 0x6a, + 0x65, 0x63, 0x74, 0x2e, 0x76, 0x31, 0x1a, 0x35, 0x73, 0x74, 0x61, 0x62, 0x69, 0x6c, 0x69, 0x74, + 0x79, 0x5f, 0x61, 0x70, 0x69, 0x2f, 0x70, 0x6c, 0x61, 0x74, 0x66, 0x6f, 0x72, 0x6d, 0x2f, 0x67, + 0x65, 0x6e, 0x65, 0x72, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x2f, 0x76, 0x31, 0x2f, 0x67, 0x65, 0x6e, + 0x65, 0x72, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x22, 0xb3, 0x03, + 0x0a, 0x0c, 0x50, 0x72, 0x6f, 0x6a, 0x65, 0x63, 0x74, 0x41, 0x73, 0x73, 0x65, 0x74, 0x12, 0x0e, + 0x0a, 0x02, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x02, 0x69, 0x64, 0x12, 0x10, + 0x0a, 0x03, 0x75, 0x72, 0x69, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x03, 0x75, 0x72, 0x69, + 0x12, 0x46, 0x0a, 0x03, 0x75, 0x73, 0x65, 0x18, 0x03, 0x20, 0x01, 0x28, 0x0e, 0x32, 0x34, 0x2e, + 0x73, 0x74, 0x61, 0x62, 0x69, 0x6c, 0x69, 0x74, 0x79, 0x61, 0x69, 0x2e, 0x70, 0x6c, 0x61, 0x74, + 0x66, 0x6f, 0x72, 0x6d, 0x61, 0x70, 0x69, 0x73, 0x2e, 0x70, 0x72, 0x6f, 0x6a, 0x65, 0x63, 0x74, + 0x2e, 0x76, 0x31, 0x2e, 0x50, 0x72, 0x6f, 0x6a, 0x65, 0x63, 0x74, 0x41, 0x73, 0x73, 0x65, 0x74, + 0x55, 0x73, 0x65, 0x52, 0x03, 0x75, 0x73, 0x65, 0x12, 0x12, 0x0a, 0x04, 0x6e, 0x61, 0x6d, 0x65, + 0x18, 0x04, 0x20, 0x01, 0x28, 0x09, 0x52, 0x04, 0x6e, 0x61, 0x6d, 0x65, 0x12, 0x12, 0x0a, 0x04, + 0x73, 0x69, 0x7a, 0x65, 0x18, 0x05, 0x20, 0x01, 0x28, 0x04, 0x52, 0x04, 0x73, 0x69, 0x7a, 0x65, + 0x12, 0x1d, 0x0a, 0x0a, 0x63, 0x72, 0x65, 0x61, 0x74, 0x65, 0x64, 0x5f, 0x61, 0x74, 0x18, 0x06, + 0x20, 0x01, 0x28, 0x04, 0x52, 0x09, 0x63, 0x72, 0x65, 0x61, 0x74, 0x65, 0x64, 0x41, 0x74, 0x12, + 0x1d, 0x0a, 0x0a, 0x75, 0x70, 0x64, 0x61, 0x74, 0x65, 0x64, 0x5f, 0x61, 0x74, 0x18, 0x07, 0x20, + 0x01, 0x28, 0x04, 0x52, 0x09, 0x75, 0x70, 0x64, 0x61, 0x74, 0x65, 0x64, 0x41, 0x74, 0x12, 0x49, + 0x0a, 0x07, 0x72, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x18, 0x08, 0x20, 0x01, 0x28, 0x0b, 0x32, + 0x2f, 0x2e, 0x73, 0x74, 0x61, 0x62, 0x69, 0x6c, 0x69, 0x74, 0x79, 0x61, 0x69, 0x2e, 0x70, 0x6c, + 0x61, 0x74, 0x66, 0x6f, 0x72, 0x6d, 0x61, 0x70, 0x69, 0x73, 0x2e, 0x67, 0x65, 0x6e, 0x65, 0x72, + 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x2e, 0x76, 0x31, 0x2e, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, + 0x52, 0x07, 0x72, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, 0x4f, 0x0a, 0x04, 0x74, 0x61, 0x67, + 0x73, 0x18, 0x09, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x3b, 0x2e, 0x73, 0x74, 0x61, 0x62, 0x69, 0x6c, + 0x69, 0x74, 0x79, 0x61, 0x69, 0x2e, 0x70, 0x6c, 0x61, 0x74, 0x66, 0x6f, 0x72, 0x6d, 0x61, 0x70, + 0x69, 0x73, 0x2e, 0x70, 0x72, 0x6f, 0x6a, 0x65, 0x63, 0x74, 0x2e, 0x76, 0x31, 0x2e, 0x50, 0x72, + 0x6f, 0x6a, 0x65, 0x63, 0x74, 0x41, 0x73, 0x73, 0x65, 0x74, 0x2e, 0x54, 0x61, 0x67, 0x73, 0x45, + 0x6e, 0x74, 0x72, 0x79, 0x52, 0x04, 0x74, 0x61, 0x67, 0x73, 0x1a, 0x37, 0x0a, 0x09, 0x54, 0x61, + 0x67, 0x73, 0x45, 0x6e, 0x74, 0x72, 0x79, 0x12, 0x10, 0x0a, 0x03, 0x6b, 0x65, 0x79, 0x18, 0x01, + 0x20, 0x01, 0x28, 0x09, 0x52, 0x03, 0x6b, 0x65, 0x79, 0x12, 0x14, 0x0a, 0x05, 0x76, 0x61, 0x6c, + 0x75, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x05, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x3a, + 0x02, 0x38, 0x01, 0x22, 0x8c, 0x04, 0x0a, 0x07, 0x50, 0x72, 0x6f, 0x6a, 0x65, 0x63, 0x74, 0x12, + 0x0e, 0x0a, 0x02, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x02, 0x69, 0x64, 0x12, + 0x14, 0x0a, 0x05, 0x74, 0x69, 0x74, 0x6c, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x05, + 0x74, 0x69, 0x74, 0x6c, 0x65, 0x12, 0x19, 0x0a, 0x08, 0x6f, 0x77, 0x6e, 0x65, 0x72, 0x5f, 0x69, + 0x64, 0x18, 0x03, 0x20, 0x01, 0x28, 0x09, 0x52, 0x07, 0x6f, 0x77, 0x6e, 0x65, 0x72, 0x49, 0x64, + 0x12, 0x4a, 0x0a, 0x06, 0x61, 0x63, 0x63, 0x65, 0x73, 0x73, 0x18, 0x04, 0x20, 0x01, 0x28, 0x0e, + 0x32, 0x32, 0x2e, 0x73, 0x74, 0x61, 0x62, 0x69, 0x6c, 0x69, 0x74, 0x79, 0x61, 0x69, 0x2e, 0x70, + 0x6c, 0x61, 0x74, 0x66, 0x6f, 0x72, 0x6d, 0x61, 0x70, 0x69, 0x73, 0x2e, 0x70, 0x72, 0x6f, 0x6a, + 0x65, 0x63, 0x74, 0x2e, 0x76, 0x31, 0x2e, 0x50, 0x72, 0x6f, 0x6a, 0x65, 0x63, 0x74, 0x41, 0x63, + 0x63, 0x65, 0x73, 0x73, 0x52, 0x06, 0x61, 0x63, 0x63, 0x65, 0x73, 0x73, 0x12, 0x4a, 0x0a, 0x06, + 0x73, 0x74, 0x61, 0x74, 0x75, 0x73, 0x18, 0x05, 0x20, 0x01, 0x28, 0x0e, 0x32, 0x32, 0x2e, 0x73, + 0x74, 0x61, 0x62, 0x69, 0x6c, 0x69, 0x74, 0x79, 0x61, 0x69, 0x2e, 0x70, 0x6c, 0x61, 0x74, 0x66, + 0x6f, 0x72, 0x6d, 0x61, 0x70, 0x69, 0x73, 0x2e, 0x70, 0x72, 0x6f, 0x6a, 0x65, 0x63, 0x74, 0x2e, + 0x76, 0x31, 0x2e, 0x50, 0x72, 0x6f, 0x6a, 0x65, 0x63, 0x74, 0x53, 0x74, 0x61, 0x74, 0x75, 0x73, + 0x52, 0x06, 0x73, 0x74, 0x61, 0x74, 0x75, 0x73, 0x12, 0x12, 0x0a, 0x04, 0x73, 0x69, 0x7a, 0x65, + 0x18, 0x06, 0x20, 0x01, 0x28, 0x04, 0x52, 0x04, 0x73, 0x69, 0x7a, 0x65, 0x12, 0x45, 0x0a, 0x04, + 0x66, 0x69, 0x6c, 0x65, 0x18, 0x07, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x31, 0x2e, 0x73, 0x74, 0x61, + 0x62, 0x69, 0x6c, 0x69, 0x74, 0x79, 0x61, 0x69, 0x2e, 0x70, 0x6c, 0x61, 0x74, 0x66, 0x6f, 0x72, + 0x6d, 0x61, 0x70, 0x69, 0x73, 0x2e, 0x70, 0x72, 0x6f, 0x6a, 0x65, 0x63, 0x74, 0x2e, 0x76, 0x31, + 0x2e, 0x50, 0x72, 0x6f, 0x6a, 0x65, 0x63, 0x74, 0x41, 0x73, 0x73, 0x65, 0x74, 0x52, 0x04, 0x66, + 0x69, 0x6c, 0x65, 0x12, 0x1d, 0x0a, 0x0a, 0x63, 0x72, 0x65, 0x61, 0x74, 0x65, 0x64, 0x5f, 0x61, + 0x74, 0x18, 0x08, 0x20, 0x01, 0x28, 0x04, 0x52, 0x09, 0x63, 0x72, 0x65, 0x61, 0x74, 0x65, 0x64, + 0x41, 0x74, 0x12, 0x1d, 0x0a, 0x0a, 0x75, 0x70, 0x64, 0x61, 0x74, 0x65, 0x64, 0x5f, 0x61, 0x74, + 0x18, 0x09, 0x20, 0x01, 0x28, 0x04, 0x52, 0x09, 0x75, 0x70, 0x64, 0x61, 0x74, 0x65, 0x64, 0x41, + 0x74, 0x12, 0x49, 0x0a, 0x06, 0x61, 0x73, 0x73, 0x65, 0x74, 0x73, 0x18, 0x0a, 0x20, 0x03, 0x28, + 0x0b, 0x32, 0x31, 0x2e, 0x73, 0x74, 0x61, 0x62, 0x69, 0x6c, 0x69, 0x74, 0x79, 0x61, 0x69, 0x2e, + 0x70, 0x6c, 0x61, 0x74, 0x66, 0x6f, 0x72, 0x6d, 0x61, 0x70, 0x69, 0x73, 0x2e, 0x70, 0x72, 0x6f, + 0x6a, 0x65, 0x63, 0x74, 0x2e, 0x76, 0x31, 0x2e, 0x50, 0x72, 0x6f, 0x6a, 0x65, 0x63, 0x74, 0x41, + 0x73, 0x73, 0x65, 0x74, 0x52, 0x06, 0x61, 0x73, 0x73, 0x65, 0x74, 0x73, 0x12, 0x44, 0x0a, 0x04, + 0x74, 0x79, 0x70, 0x65, 0x18, 0x0b, 0x20, 0x01, 0x28, 0x0e, 0x32, 0x30, 0x2e, 0x73, 0x74, 0x61, + 0x62, 0x69, 0x6c, 0x69, 0x74, 0x79, 0x61, 0x69, 0x2e, 0x70, 0x6c, 0x61, 0x74, 0x66, 0x6f, 0x72, + 0x6d, 0x61, 0x70, 0x69, 0x73, 0x2e, 0x70, 0x72, 0x6f, 0x6a, 0x65, 0x63, 0x74, 0x2e, 0x76, 0x31, + 0x2e, 0x50, 0x72, 0x6f, 0x6a, 0x65, 0x63, 0x74, 0x54, 0x79, 0x70, 0x65, 0x52, 0x04, 0x74, 0x79, + 0x70, 0x65, 0x22, 0x8c, 0x03, 0x0a, 0x14, 0x43, 0x72, 0x65, 0x61, 0x74, 0x65, 0x50, 0x72, 0x6f, + 0x6a, 0x65, 0x63, 0x74, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, 0x14, 0x0a, 0x05, 0x74, + 0x69, 0x74, 0x6c, 0x65, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x05, 0x74, 0x69, 0x74, 0x6c, + 0x65, 0x12, 0x1e, 0x0a, 0x08, 0x6f, 0x77, 0x6e, 0x65, 0x72, 0x5f, 0x69, 0x64, 0x18, 0x02, 0x20, + 0x01, 0x28, 0x09, 0x48, 0x00, 0x52, 0x07, 0x6f, 0x77, 0x6e, 0x65, 0x72, 0x49, 0x64, 0x88, 0x01, + 0x01, 0x12, 0x4a, 0x0a, 0x06, 0x61, 0x63, 0x63, 0x65, 0x73, 0x73, 0x18, 0x03, 0x20, 0x01, 0x28, + 0x0e, 0x32, 0x32, 0x2e, 0x73, 0x74, 0x61, 0x62, 0x69, 0x6c, 0x69, 0x74, 0x79, 0x61, 0x69, 0x2e, + 0x70, 0x6c, 0x61, 0x74, 0x66, 0x6f, 0x72, 0x6d, 0x61, 0x70, 0x69, 0x73, 0x2e, 0x70, 0x72, 0x6f, + 0x6a, 0x65, 0x63, 0x74, 0x2e, 0x76, 0x31, 0x2e, 0x50, 0x72, 0x6f, 0x6a, 0x65, 0x63, 0x74, 0x41, + 0x63, 0x63, 0x65, 0x73, 0x73, 0x52, 0x06, 0x61, 0x63, 0x63, 0x65, 0x73, 0x73, 0x12, 0x4a, 0x0a, + 0x06, 0x73, 0x74, 0x61, 0x74, 0x75, 0x73, 0x18, 0x04, 0x20, 0x01, 0x28, 0x0e, 0x32, 0x32, 0x2e, + 0x73, 0x74, 0x61, 0x62, 0x69, 0x6c, 0x69, 0x74, 0x79, 0x61, 0x69, 0x2e, 0x70, 0x6c, 0x61, 0x74, + 0x66, 0x6f, 0x72, 0x6d, 0x61, 0x70, 0x69, 0x73, 0x2e, 0x70, 0x72, 0x6f, 0x6a, 0x65, 0x63, 0x74, + 0x2e, 0x76, 0x31, 0x2e, 0x50, 0x72, 0x6f, 0x6a, 0x65, 0x63, 0x74, 0x53, 0x74, 0x61, 0x74, 0x75, + 0x73, 0x52, 0x06, 0x73, 0x74, 0x61, 0x74, 0x75, 0x73, 0x12, 0x4a, 0x0a, 0x04, 0x66, 0x69, 0x6c, + 0x65, 0x18, 0x05, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x31, 0x2e, 0x73, 0x74, 0x61, 0x62, 0x69, 0x6c, + 0x69, 0x74, 0x79, 0x61, 0x69, 0x2e, 0x70, 0x6c, 0x61, 0x74, 0x66, 0x6f, 0x72, 0x6d, 0x61, 0x70, + 0x69, 0x73, 0x2e, 0x70, 0x72, 0x6f, 0x6a, 0x65, 0x63, 0x74, 0x2e, 0x76, 0x31, 0x2e, 0x50, 0x72, + 0x6f, 0x6a, 0x65, 0x63, 0x74, 0x41, 0x73, 0x73, 0x65, 0x74, 0x48, 0x01, 0x52, 0x04, 0x66, 0x69, + 0x6c, 0x65, 0x88, 0x01, 0x01, 0x12, 0x44, 0x0a, 0x04, 0x74, 0x79, 0x70, 0x65, 0x18, 0x06, 0x20, + 0x01, 0x28, 0x0e, 0x32, 0x30, 0x2e, 0x73, 0x74, 0x61, 0x62, 0x69, 0x6c, 0x69, 0x74, 0x79, 0x61, + 0x69, 0x2e, 0x70, 0x6c, 0x61, 0x74, 0x66, 0x6f, 0x72, 0x6d, 0x61, 0x70, 0x69, 0x73, 0x2e, 0x70, + 0x72, 0x6f, 0x6a, 0x65, 0x63, 0x74, 0x2e, 0x76, 0x31, 0x2e, 0x50, 0x72, 0x6f, 0x6a, 0x65, 0x63, + 0x74, 0x54, 0x79, 0x70, 0x65, 0x52, 0x04, 0x74, 0x79, 0x70, 0x65, 0x42, 0x0b, 0x0a, 0x09, 0x5f, + 0x6f, 0x77, 0x6e, 0x65, 0x72, 0x5f, 0x69, 0x64, 0x42, 0x07, 0x0a, 0x05, 0x5f, 0x66, 0x69, 0x6c, + 0x65, 0x22, 0xd9, 0x03, 0x0a, 0x14, 0x55, 0x70, 0x64, 0x61, 0x74, 0x65, 0x50, 0x72, 0x6f, 0x6a, + 0x65, 0x63, 0x74, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, 0x0e, 0x0a, 0x02, 0x69, 0x64, + 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x02, 0x69, 0x64, 0x12, 0x1e, 0x0a, 0x08, 0x6f, 0x77, + 0x6e, 0x65, 0x72, 0x5f, 0x69, 0x64, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x48, 0x00, 0x52, 0x07, + 0x6f, 0x77, 0x6e, 0x65, 0x72, 0x49, 0x64, 0x88, 0x01, 0x01, 0x12, 0x19, 0x0a, 0x05, 0x74, 0x69, + 0x74, 0x6c, 0x65, 0x18, 0x03, 0x20, 0x01, 0x28, 0x09, 0x48, 0x01, 0x52, 0x05, 0x74, 0x69, 0x74, + 0x6c, 0x65, 0x88, 0x01, 0x01, 0x12, 0x4f, 0x0a, 0x06, 0x61, 0x63, 0x63, 0x65, 0x73, 0x73, 0x18, + 0x04, 0x20, 0x01, 0x28, 0x0e, 0x32, 0x32, 0x2e, 0x73, 0x74, 0x61, 0x62, 0x69, 0x6c, 0x69, 0x74, + 0x79, 0x61, 0x69, 0x2e, 0x70, 0x6c, 0x61, 0x74, 0x66, 0x6f, 0x72, 0x6d, 0x61, 0x70, 0x69, 0x73, + 0x2e, 0x70, 0x72, 0x6f, 0x6a, 0x65, 0x63, 0x74, 0x2e, 0x76, 0x31, 0x2e, 0x50, 0x72, 0x6f, 0x6a, + 0x65, 0x63, 0x74, 0x41, 0x63, 0x63, 0x65, 0x73, 0x73, 0x48, 0x02, 0x52, 0x06, 0x61, 0x63, 0x63, + 0x65, 0x73, 0x73, 0x88, 0x01, 0x01, 0x12, 0x4f, 0x0a, 0x06, 0x73, 0x74, 0x61, 0x74, 0x75, 0x73, + 0x18, 0x05, 0x20, 0x01, 0x28, 0x0e, 0x32, 0x32, 0x2e, 0x73, 0x74, 0x61, 0x62, 0x69, 0x6c, 0x69, + 0x74, 0x79, 0x61, 0x69, 0x2e, 0x70, 0x6c, 0x61, 0x74, 0x66, 0x6f, 0x72, 0x6d, 0x61, 0x70, 0x69, + 0x73, 0x2e, 0x70, 0x72, 0x6f, 0x6a, 0x65, 0x63, 0x74, 0x2e, 0x76, 0x31, 0x2e, 0x50, 0x72, 0x6f, + 0x6a, 0x65, 0x63, 0x74, 0x53, 0x74, 0x61, 0x74, 0x75, 0x73, 0x48, 0x03, 0x52, 0x06, 0x73, 0x74, + 0x61, 0x74, 0x75, 0x73, 0x88, 0x01, 0x01, 0x12, 0x4a, 0x0a, 0x04, 0x66, 0x69, 0x6c, 0x65, 0x18, + 0x06, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x31, 0x2e, 0x73, 0x74, 0x61, 0x62, 0x69, 0x6c, 0x69, 0x74, + 0x79, 0x61, 0x69, 0x2e, 0x70, 0x6c, 0x61, 0x74, 0x66, 0x6f, 0x72, 0x6d, 0x61, 0x70, 0x69, 0x73, + 0x2e, 0x70, 0x72, 0x6f, 0x6a, 0x65, 0x63, 0x74, 0x2e, 0x76, 0x31, 0x2e, 0x50, 0x72, 0x6f, 0x6a, + 0x65, 0x63, 0x74, 0x41, 0x73, 0x73, 0x65, 0x74, 0x48, 0x04, 0x52, 0x04, 0x66, 0x69, 0x6c, 0x65, + 0x88, 0x01, 0x01, 0x12, 0x49, 0x0a, 0x04, 0x74, 0x79, 0x70, 0x65, 0x18, 0x07, 0x20, 0x01, 0x28, + 0x0e, 0x32, 0x30, 0x2e, 0x73, 0x74, 0x61, 0x62, 0x69, 0x6c, 0x69, 0x74, 0x79, 0x61, 0x69, 0x2e, + 0x70, 0x6c, 0x61, 0x74, 0x66, 0x6f, 0x72, 0x6d, 0x61, 0x70, 0x69, 0x73, 0x2e, 0x70, 0x72, 0x6f, + 0x6a, 0x65, 0x63, 0x74, 0x2e, 0x76, 0x31, 0x2e, 0x50, 0x72, 0x6f, 0x6a, 0x65, 0x63, 0x74, 0x54, + 0x79, 0x70, 0x65, 0x48, 0x05, 0x52, 0x04, 0x74, 0x79, 0x70, 0x65, 0x88, 0x01, 0x01, 0x42, 0x0b, + 0x0a, 0x09, 0x5f, 0x6f, 0x77, 0x6e, 0x65, 0x72, 0x5f, 0x69, 0x64, 0x42, 0x08, 0x0a, 0x06, 0x5f, + 0x74, 0x69, 0x74, 0x6c, 0x65, 0x42, 0x09, 0x0a, 0x07, 0x5f, 0x61, 0x63, 0x63, 0x65, 0x73, 0x73, + 0x42, 0x09, 0x0a, 0x07, 0x5f, 0x73, 0x74, 0x61, 0x74, 0x75, 0x73, 0x42, 0x07, 0x0a, 0x05, 0x5f, + 0x66, 0x69, 0x6c, 0x65, 0x42, 0x07, 0x0a, 0x05, 0x5f, 0x74, 0x79, 0x70, 0x65, 0x22, 0x41, 0x0a, + 0x12, 0x4c, 0x69, 0x73, 0x74, 0x50, 0x72, 0x6f, 0x6a, 0x65, 0x63, 0x74, 0x52, 0x65, 0x71, 0x75, + 0x65, 0x73, 0x74, 0x12, 0x1e, 0x0a, 0x08, 0x6f, 0x77, 0x6e, 0x65, 0x72, 0x5f, 0x69, 0x64, 0x18, + 0x01, 0x20, 0x01, 0x28, 0x09, 0x48, 0x00, 0x52, 0x07, 0x6f, 0x77, 0x6e, 0x65, 0x72, 0x49, 0x64, + 0x88, 0x01, 0x01, 0x42, 0x0b, 0x0a, 0x09, 0x5f, 0x6f, 0x77, 0x6e, 0x65, 0x72, 0x5f, 0x69, 0x64, + 0x22, 0x50, 0x0a, 0x11, 0x47, 0x65, 0x74, 0x50, 0x72, 0x6f, 0x6a, 0x65, 0x63, 0x74, 0x52, 0x65, + 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, 0x0e, 0x0a, 0x02, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, + 0x09, 0x52, 0x02, 0x69, 0x64, 0x12, 0x1e, 0x0a, 0x08, 0x6f, 0x77, 0x6e, 0x65, 0x72, 0x5f, 0x69, + 0x64, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x48, 0x00, 0x52, 0x07, 0x6f, 0x77, 0x6e, 0x65, 0x72, + 0x49, 0x64, 0x88, 0x01, 0x01, 0x42, 0x0b, 0x0a, 0x09, 0x5f, 0x6f, 0x77, 0x6e, 0x65, 0x72, 0x5f, + 0x69, 0x64, 0x22, 0x53, 0x0a, 0x14, 0x44, 0x65, 0x6c, 0x65, 0x74, 0x65, 0x50, 0x72, 0x6f, 0x6a, + 0x65, 0x63, 0x74, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, 0x0e, 0x0a, 0x02, 0x69, 0x64, + 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x02, 0x69, 0x64, 0x12, 0x1e, 0x0a, 0x08, 0x6f, 0x77, + 0x6e, 0x65, 0x72, 0x5f, 0x69, 0x64, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x48, 0x00, 0x52, 0x07, + 0x6f, 0x77, 0x6e, 0x65, 0x72, 0x49, 0x64, 0x88, 0x01, 0x01, 0x42, 0x0b, 0x0a, 0x09, 0x5f, 0x6f, + 0x77, 0x6e, 0x65, 0x72, 0x5f, 0x69, 0x64, 0x22, 0x98, 0x04, 0x0a, 0x12, 0x51, 0x75, 0x65, 0x72, + 0x79, 0x41, 0x73, 0x73, 0x65, 0x74, 0x73, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, 0x0e, + 0x0a, 0x02, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x02, 0x69, 0x64, 0x12, 0x1e, + 0x0a, 0x08, 0x6f, 0x77, 0x6e, 0x65, 0x72, 0x5f, 0x69, 0x64, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, + 0x48, 0x00, 0x52, 0x07, 0x6f, 0x77, 0x6e, 0x65, 0x72, 0x49, 0x64, 0x88, 0x01, 0x01, 0x12, 0x19, + 0x0a, 0x05, 0x73, 0x69, 0x6e, 0x63, 0x65, 0x18, 0x03, 0x20, 0x01, 0x28, 0x04, 0x48, 0x01, 0x52, + 0x05, 0x73, 0x69, 0x6e, 0x63, 0x65, 0x88, 0x01, 0x01, 0x12, 0x19, 0x0a, 0x05, 0x75, 0x6e, 0x74, + 0x69, 0x6c, 0x18, 0x04, 0x20, 0x01, 0x28, 0x04, 0x48, 0x02, 0x52, 0x05, 0x75, 0x6e, 0x74, 0x69, + 0x6c, 0x88, 0x01, 0x01, 0x12, 0x19, 0x0a, 0x05, 0x6c, 0x69, 0x6d, 0x69, 0x74, 0x18, 0x05, 0x20, + 0x01, 0x28, 0x04, 0x48, 0x03, 0x52, 0x05, 0x6c, 0x69, 0x6d, 0x69, 0x74, 0x88, 0x01, 0x01, 0x12, + 0x20, 0x0a, 0x09, 0x73, 0x74, 0x61, 0x72, 0x74, 0x5f, 0x6b, 0x65, 0x79, 0x18, 0x06, 0x20, 0x01, + 0x28, 0x09, 0x48, 0x04, 0x52, 0x08, 0x73, 0x74, 0x61, 0x72, 0x74, 0x4b, 0x65, 0x79, 0x88, 0x01, + 0x01, 0x12, 0x46, 0x0a, 0x03, 0x75, 0x73, 0x65, 0x18, 0x07, 0x20, 0x03, 0x28, 0x0e, 0x32, 0x34, + 0x2e, 0x73, 0x74, 0x61, 0x62, 0x69, 0x6c, 0x69, 0x74, 0x79, 0x61, 0x69, 0x2e, 0x70, 0x6c, 0x61, + 0x74, 0x66, 0x6f, 0x72, 0x6d, 0x61, 0x70, 0x69, 0x73, 0x2e, 0x70, 0x72, 0x6f, 0x6a, 0x65, 0x63, + 0x74, 0x2e, 0x76, 0x31, 0x2e, 0x50, 0x72, 0x6f, 0x6a, 0x65, 0x63, 0x74, 0x41, 0x73, 0x73, 0x65, + 0x74, 0x55, 0x73, 0x65, 0x52, 0x03, 0x75, 0x73, 0x65, 0x12, 0x4e, 0x0a, 0x08, 0x73, 0x6f, 0x72, + 0x74, 0x5f, 0x64, 0x69, 0x72, 0x18, 0x08, 0x20, 0x01, 0x28, 0x0e, 0x32, 0x33, 0x2e, 0x73, 0x74, + 0x61, 0x62, 0x69, 0x6c, 0x69, 0x74, 0x79, 0x61, 0x69, 0x2e, 0x70, 0x6c, 0x61, 0x74, 0x66, 0x6f, + 0x72, 0x6d, 0x61, 0x70, 0x69, 0x73, 0x2e, 0x70, 0x72, 0x6f, 0x6a, 0x65, 0x63, 0x74, 0x2e, 0x76, + 0x31, 0x2e, 0x50, 0x72, 0x6f, 0x6a, 0x65, 0x63, 0x74, 0x53, 0x6f, 0x72, 0x74, 0x44, 0x69, 0x72, + 0x52, 0x07, 0x73, 0x6f, 0x72, 0x74, 0x44, 0x69, 0x72, 0x12, 0x55, 0x0a, 0x04, 0x74, 0x61, 0x67, + 0x73, 0x18, 0x09, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x41, 0x2e, 0x73, 0x74, 0x61, 0x62, 0x69, 0x6c, + 0x69, 0x74, 0x79, 0x61, 0x69, 0x2e, 0x70, 0x6c, 0x61, 0x74, 0x66, 0x6f, 0x72, 0x6d, 0x61, 0x70, + 0x69, 0x73, 0x2e, 0x70, 0x72, 0x6f, 0x6a, 0x65, 0x63, 0x74, 0x2e, 0x76, 0x31, 0x2e, 0x51, 0x75, + 0x65, 0x72, 0x79, 0x41, 0x73, 0x73, 0x65, 0x74, 0x73, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, + 0x2e, 0x54, 0x61, 0x67, 0x73, 0x45, 0x6e, 0x74, 0x72, 0x79, 0x52, 0x04, 0x74, 0x61, 0x67, 0x73, + 0x1a, 0x37, 0x0a, 0x09, 0x54, 0x61, 0x67, 0x73, 0x45, 0x6e, 0x74, 0x72, 0x79, 0x12, 0x10, 0x0a, + 0x03, 0x6b, 0x65, 0x79, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x03, 0x6b, 0x65, 0x79, 0x12, + 0x14, 0x0a, 0x05, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x05, + 0x76, 0x61, 0x6c, 0x75, 0x65, 0x3a, 0x02, 0x38, 0x01, 0x42, 0x0b, 0x0a, 0x09, 0x5f, 0x6f, 0x77, + 0x6e, 0x65, 0x72, 0x5f, 0x69, 0x64, 0x42, 0x08, 0x0a, 0x06, 0x5f, 0x73, 0x69, 0x6e, 0x63, 0x65, + 0x42, 0x08, 0x0a, 0x06, 0x5f, 0x75, 0x6e, 0x74, 0x69, 0x6c, 0x42, 0x08, 0x0a, 0x06, 0x5f, 0x6c, + 0x69, 0x6d, 0x69, 0x74, 0x42, 0x0c, 0x0a, 0x0a, 0x5f, 0x73, 0x74, 0x61, 0x72, 0x74, 0x5f, 0x6b, + 0x65, 0x79, 0x22, 0x8d, 0x01, 0x0a, 0x13, 0x51, 0x75, 0x65, 0x72, 0x79, 0x41, 0x73, 0x73, 0x65, + 0x74, 0x73, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x49, 0x0a, 0x06, 0x61, 0x73, + 0x73, 0x65, 0x74, 0x73, 0x18, 0x01, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x31, 0x2e, 0x73, 0x74, 0x61, + 0x62, 0x69, 0x6c, 0x69, 0x74, 0x79, 0x61, 0x69, 0x2e, 0x70, 0x6c, 0x61, 0x74, 0x66, 0x6f, 0x72, + 0x6d, 0x61, 0x70, 0x69, 0x73, 0x2e, 0x70, 0x72, 0x6f, 0x6a, 0x65, 0x63, 0x74, 0x2e, 0x76, 0x31, + 0x2e, 0x50, 0x72, 0x6f, 0x6a, 0x65, 0x63, 0x74, 0x41, 0x73, 0x73, 0x65, 0x74, 0x52, 0x06, 0x61, + 0x73, 0x73, 0x65, 0x74, 0x73, 0x12, 0x1e, 0x0a, 0x08, 0x6c, 0x61, 0x73, 0x74, 0x5f, 0x6b, 0x65, + 0x79, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x48, 0x00, 0x52, 0x07, 0x6c, 0x61, 0x73, 0x74, 0x4b, + 0x65, 0x79, 0x88, 0x01, 0x01, 0x42, 0x0b, 0x0a, 0x09, 0x5f, 0x6c, 0x61, 0x73, 0x74, 0x5f, 0x6b, + 0x65, 0x79, 0x22, 0xfa, 0x01, 0x0a, 0x10, 0x54, 0x61, 0x67, 0x41, 0x73, 0x73, 0x65, 0x74, 0x73, + 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, 0x0e, 0x0a, 0x02, 0x69, 0x64, 0x18, 0x01, 0x20, + 0x01, 0x28, 0x09, 0x52, 0x02, 0x69, 0x64, 0x12, 0x1e, 0x0a, 0x08, 0x6f, 0x77, 0x6e, 0x65, 0x72, + 0x5f, 0x69, 0x64, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x48, 0x00, 0x52, 0x07, 0x6f, 0x77, 0x6e, + 0x65, 0x72, 0x49, 0x64, 0x88, 0x01, 0x01, 0x12, 0x1b, 0x0a, 0x09, 0x61, 0x73, 0x73, 0x65, 0x74, + 0x5f, 0x69, 0x64, 0x73, 0x18, 0x03, 0x20, 0x03, 0x28, 0x09, 0x52, 0x08, 0x61, 0x73, 0x73, 0x65, + 0x74, 0x49, 0x64, 0x73, 0x12, 0x53, 0x0a, 0x04, 0x74, 0x61, 0x67, 0x73, 0x18, 0x04, 0x20, 0x03, + 0x28, 0x0b, 0x32, 0x3f, 0x2e, 0x73, 0x74, 0x61, 0x62, 0x69, 0x6c, 0x69, 0x74, 0x79, 0x61, 0x69, + 0x2e, 0x70, 0x6c, 0x61, 0x74, 0x66, 0x6f, 0x72, 0x6d, 0x61, 0x70, 0x69, 0x73, 0x2e, 0x70, 0x72, + 0x6f, 0x6a, 0x65, 0x63, 0x74, 0x2e, 0x76, 0x31, 0x2e, 0x54, 0x61, 0x67, 0x41, 0x73, 0x73, 0x65, + 0x74, 0x73, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x2e, 0x54, 0x61, 0x67, 0x73, 0x45, 0x6e, + 0x74, 0x72, 0x79, 0x52, 0x04, 0x74, 0x61, 0x67, 0x73, 0x1a, 0x37, 0x0a, 0x09, 0x54, 0x61, 0x67, + 0x73, 0x45, 0x6e, 0x74, 0x72, 0x79, 0x12, 0x10, 0x0a, 0x03, 0x6b, 0x65, 0x79, 0x18, 0x01, 0x20, + 0x01, 0x28, 0x09, 0x52, 0x03, 0x6b, 0x65, 0x79, 0x12, 0x14, 0x0a, 0x05, 0x76, 0x61, 0x6c, 0x75, + 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x05, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x3a, 0x02, + 0x38, 0x01, 0x42, 0x0b, 0x0a, 0x09, 0x5f, 0x6f, 0x77, 0x6e, 0x65, 0x72, 0x5f, 0x69, 0x64, 0x22, + 0x5b, 0x0a, 0x11, 0x54, 0x61, 0x67, 0x41, 0x73, 0x73, 0x65, 0x74, 0x73, 0x52, 0x65, 0x73, 0x70, + 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x0e, 0x0a, 0x02, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, + 0x52, 0x02, 0x69, 0x64, 0x12, 0x19, 0x0a, 0x08, 0x6f, 0x77, 0x6e, 0x65, 0x72, 0x5f, 0x69, 0x64, + 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x07, 0x6f, 0x77, 0x6e, 0x65, 0x72, 0x49, 0x64, 0x12, + 0x1b, 0x0a, 0x09, 0x61, 0x73, 0x73, 0x65, 0x74, 0x5f, 0x69, 0x64, 0x73, 0x18, 0x03, 0x20, 0x03, + 0x28, 0x09, 0x52, 0x08, 0x61, 0x73, 0x73, 0x65, 0x74, 0x49, 0x64, 0x73, 0x22, 0x89, 0x01, 0x0a, + 0x12, 0x55, 0x6e, 0x74, 0x61, 0x67, 0x41, 0x73, 0x73, 0x65, 0x74, 0x73, 0x52, 0x65, 0x71, 0x75, + 0x65, 0x73, 0x74, 0x12, 0x0e, 0x0a, 0x02, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, + 0x02, 0x69, 0x64, 0x12, 0x1e, 0x0a, 0x08, 0x6f, 0x77, 0x6e, 0x65, 0x72, 0x5f, 0x69, 0x64, 0x18, + 0x02, 0x20, 0x01, 0x28, 0x09, 0x48, 0x00, 0x52, 0x07, 0x6f, 0x77, 0x6e, 0x65, 0x72, 0x49, 0x64, + 0x88, 0x01, 0x01, 0x12, 0x1b, 0x0a, 0x09, 0x61, 0x73, 0x73, 0x65, 0x74, 0x5f, 0x69, 0x64, 0x73, + 0x18, 0x03, 0x20, 0x03, 0x28, 0x09, 0x52, 0x08, 0x61, 0x73, 0x73, 0x65, 0x74, 0x49, 0x64, 0x73, + 0x12, 0x19, 0x0a, 0x08, 0x74, 0x61, 0x67, 0x5f, 0x6b, 0x65, 0x79, 0x73, 0x18, 0x04, 0x20, 0x03, + 0x28, 0x09, 0x52, 0x07, 0x74, 0x61, 0x67, 0x4b, 0x65, 0x79, 0x73, 0x42, 0x0b, 0x0a, 0x09, 0x5f, + 0x6f, 0x77, 0x6e, 0x65, 0x72, 0x5f, 0x69, 0x64, 0x22, 0x5d, 0x0a, 0x13, 0x55, 0x6e, 0x74, 0x61, + 0x67, 0x41, 0x73, 0x73, 0x65, 0x74, 0x73, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, + 0x0e, 0x0a, 0x02, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x02, 0x69, 0x64, 0x12, + 0x19, 0x0a, 0x08, 0x6f, 0x77, 0x6e, 0x65, 0x72, 0x5f, 0x69, 0x64, 0x18, 0x02, 0x20, 0x01, 0x28, + 0x09, 0x52, 0x07, 0x6f, 0x77, 0x6e, 0x65, 0x72, 0x49, 0x64, 0x12, 0x1b, 0x0a, 0x09, 0x61, 0x73, + 0x73, 0x65, 0x74, 0x5f, 0x69, 0x64, 0x73, 0x18, 0x03, 0x20, 0x03, 0x28, 0x09, 0x52, 0x08, 0x61, + 0x73, 0x73, 0x65, 0x74, 0x49, 0x64, 0x73, 0x22, 0x6f, 0x0a, 0x13, 0x44, 0x65, 0x6c, 0x65, 0x74, + 0x65, 0x41, 0x73, 0x73, 0x65, 0x74, 0x73, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, 0x0e, + 0x0a, 0x02, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x02, 0x69, 0x64, 0x12, 0x1e, + 0x0a, 0x08, 0x6f, 0x77, 0x6e, 0x65, 0x72, 0x5f, 0x69, 0x64, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, + 0x48, 0x00, 0x52, 0x07, 0x6f, 0x77, 0x6e, 0x65, 0x72, 0x49, 0x64, 0x88, 0x01, 0x01, 0x12, 0x1b, + 0x0a, 0x09, 0x61, 0x73, 0x73, 0x65, 0x74, 0x5f, 0x69, 0x64, 0x73, 0x18, 0x03, 0x20, 0x03, 0x28, + 0x09, 0x52, 0x08, 0x61, 0x73, 0x73, 0x65, 0x74, 0x49, 0x64, 0x73, 0x42, 0x0b, 0x0a, 0x09, 0x5f, + 0x6f, 0x77, 0x6e, 0x65, 0x72, 0x5f, 0x69, 0x64, 0x22, 0x5e, 0x0a, 0x14, 0x44, 0x65, 0x6c, 0x65, + 0x74, 0x65, 0x41, 0x73, 0x73, 0x65, 0x74, 0x73, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, + 0x12, 0x0e, 0x0a, 0x02, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x02, 0x69, 0x64, + 0x12, 0x19, 0x0a, 0x08, 0x6f, 0x77, 0x6e, 0x65, 0x72, 0x5f, 0x69, 0x64, 0x18, 0x02, 0x20, 0x01, + 0x28, 0x09, 0x52, 0x07, 0x6f, 0x77, 0x6e, 0x65, 0x72, 0x49, 0x64, 0x12, 0x1b, 0x0a, 0x09, 0x61, + 0x73, 0x73, 0x65, 0x74, 0x5f, 0x69, 0x64, 0x73, 0x18, 0x03, 0x20, 0x03, 0x28, 0x09, 0x52, 0x08, + 0x61, 0x73, 0x73, 0x65, 0x74, 0x49, 0x64, 0x73, 0x2a, 0x46, 0x0a, 0x0d, 0x50, 0x72, 0x6f, 0x6a, + 0x65, 0x63, 0x74, 0x41, 0x63, 0x63, 0x65, 0x73, 0x73, 0x12, 0x1a, 0x0a, 0x16, 0x50, 0x52, 0x4f, + 0x4a, 0x45, 0x43, 0x54, 0x5f, 0x41, 0x43, 0x43, 0x45, 0x53, 0x53, 0x5f, 0x50, 0x52, 0x49, 0x56, + 0x41, 0x54, 0x45, 0x10, 0x00, 0x12, 0x19, 0x0a, 0x15, 0x50, 0x52, 0x4f, 0x4a, 0x45, 0x43, 0x54, + 0x5f, 0x41, 0x43, 0x43, 0x45, 0x53, 0x53, 0x5f, 0x50, 0x55, 0x42, 0x4c, 0x49, 0x43, 0x10, 0x01, + 0x2a, 0x63, 0x0a, 0x0d, 0x50, 0x72, 0x6f, 0x6a, 0x65, 0x63, 0x74, 0x53, 0x74, 0x61, 0x74, 0x75, + 0x73, 0x12, 0x1b, 0x0a, 0x17, 0x50, 0x52, 0x4f, 0x4a, 0x45, 0x43, 0x54, 0x5f, 0x53, 0x54, 0x41, + 0x54, 0x55, 0x53, 0x5f, 0x49, 0x4e, 0x41, 0x43, 0x54, 0x49, 0x56, 0x45, 0x10, 0x00, 0x12, 0x19, + 0x0a, 0x15, 0x50, 0x52, 0x4f, 0x4a, 0x45, 0x43, 0x54, 0x5f, 0x53, 0x54, 0x41, 0x54, 0x55, 0x53, + 0x5f, 0x41, 0x43, 0x54, 0x49, 0x56, 0x45, 0x10, 0x01, 0x12, 0x1a, 0x0a, 0x16, 0x50, 0x52, 0x4f, + 0x4a, 0x45, 0x43, 0x54, 0x5f, 0x53, 0x54, 0x41, 0x54, 0x55, 0x53, 0x5f, 0x44, 0x45, 0x4c, 0x45, + 0x54, 0x45, 0x44, 0x10, 0x02, 0x2a, 0xb0, 0x01, 0x0a, 0x0f, 0x50, 0x72, 0x6f, 0x6a, 0x65, 0x63, + 0x74, 0x41, 0x73, 0x73, 0x65, 0x74, 0x55, 0x73, 0x65, 0x12, 0x1f, 0x0a, 0x1b, 0x50, 0x52, 0x4f, + 0x4a, 0x45, 0x43, 0x54, 0x5f, 0x41, 0x53, 0x53, 0x45, 0x54, 0x5f, 0x55, 0x53, 0x45, 0x5f, 0x55, + 0x4e, 0x44, 0x45, 0x46, 0x49, 0x4e, 0x45, 0x44, 0x10, 0x00, 0x12, 0x1b, 0x0a, 0x17, 0x50, 0x52, + 0x4f, 0x4a, 0x45, 0x43, 0x54, 0x5f, 0x41, 0x53, 0x53, 0x45, 0x54, 0x5f, 0x55, 0x53, 0x45, 0x5f, + 0x49, 0x4e, 0x50, 0x55, 0x54, 0x10, 0x01, 0x12, 0x1c, 0x0a, 0x18, 0x50, 0x52, 0x4f, 0x4a, 0x45, + 0x43, 0x54, 0x5f, 0x41, 0x53, 0x53, 0x45, 0x54, 0x5f, 0x55, 0x53, 0x45, 0x5f, 0x4f, 0x55, 0x54, + 0x50, 0x55, 0x54, 0x10, 0x02, 0x12, 0x22, 0x0a, 0x1e, 0x50, 0x52, 0x4f, 0x4a, 0x45, 0x43, 0x54, + 0x5f, 0x41, 0x53, 0x53, 0x45, 0x54, 0x5f, 0x55, 0x53, 0x45, 0x5f, 0x49, 0x4e, 0x54, 0x45, 0x52, + 0x4d, 0x45, 0x44, 0x49, 0x41, 0x54, 0x45, 0x10, 0x03, 0x12, 0x1d, 0x0a, 0x19, 0x50, 0x52, 0x4f, + 0x4a, 0x45, 0x43, 0x54, 0x5f, 0x41, 0x53, 0x53, 0x45, 0x54, 0x5f, 0x55, 0x53, 0x45, 0x5f, 0x50, + 0x52, 0x4f, 0x4a, 0x45, 0x43, 0x54, 0x10, 0x04, 0x2a, 0x67, 0x0a, 0x0e, 0x50, 0x72, 0x6f, 0x6a, + 0x65, 0x63, 0x74, 0x53, 0x6f, 0x72, 0x74, 0x44, 0x69, 0x72, 0x12, 0x20, 0x0a, 0x1c, 0x50, 0x52, + 0x4f, 0x4a, 0x45, 0x43, 0x54, 0x5f, 0x53, 0x4f, 0x52, 0x54, 0x5f, 0x44, 0x49, 0x52, 0x5f, 0x55, + 0x4e, 0x53, 0x50, 0x45, 0x43, 0x49, 0x46, 0x49, 0x45, 0x44, 0x10, 0x00, 0x12, 0x18, 0x0a, 0x14, + 0x50, 0x52, 0x4f, 0x4a, 0x45, 0x43, 0x54, 0x5f, 0x53, 0x4f, 0x52, 0x54, 0x5f, 0x44, 0x49, 0x52, + 0x5f, 0x41, 0x53, 0x43, 0x10, 0x01, 0x12, 0x19, 0x0a, 0x15, 0x50, 0x52, 0x4f, 0x4a, 0x45, 0x43, + 0x54, 0x5f, 0x53, 0x4f, 0x52, 0x54, 0x5f, 0x44, 0x49, 0x52, 0x5f, 0x44, 0x45, 0x53, 0x43, 0x10, + 0x02, 0x2a, 0x46, 0x0a, 0x0b, 0x50, 0x72, 0x6f, 0x6a, 0x65, 0x63, 0x74, 0x54, 0x79, 0x70, 0x65, + 0x12, 0x1c, 0x0a, 0x18, 0x50, 0x52, 0x4f, 0x4a, 0x45, 0x43, 0x54, 0x5f, 0x54, 0x59, 0x50, 0x45, + 0x5f, 0x55, 0x4e, 0x53, 0x50, 0x45, 0x43, 0x49, 0x46, 0x49, 0x45, 0x44, 0x10, 0x00, 0x12, 0x19, + 0x0a, 0x15, 0x50, 0x52, 0x4f, 0x4a, 0x45, 0x43, 0x54, 0x5f, 0x54, 0x59, 0x50, 0x45, 0x5f, 0x54, + 0x52, 0x41, 0x49, 0x4e, 0x49, 0x4e, 0x47, 0x10, 0x01, 0x32, 0xe1, 0x08, 0x0a, 0x0e, 0x50, 0x72, + 0x6f, 0x6a, 0x65, 0x63, 0x74, 0x53, 0x65, 0x72, 0x76, 0x69, 0x63, 0x65, 0x12, 0x73, 0x0a, 0x06, + 0x43, 0x72, 0x65, 0x61, 0x74, 0x65, 0x12, 0x39, 0x2e, 0x73, 0x74, 0x61, 0x62, 0x69, 0x6c, 0x69, + 0x74, 0x79, 0x61, 0x69, 0x2e, 0x70, 0x6c, 0x61, 0x74, 0x66, 0x6f, 0x72, 0x6d, 0x61, 0x70, 0x69, + 0x73, 0x2e, 0x70, 0x72, 0x6f, 0x6a, 0x65, 0x63, 0x74, 0x2e, 0x76, 0x31, 0x2e, 0x43, 0x72, 0x65, + 0x61, 0x74, 0x65, 0x50, 0x72, 0x6f, 0x6a, 0x65, 0x63, 0x74, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, + 0x74, 0x1a, 0x2c, 0x2e, 0x73, 0x74, 0x61, 0x62, 0x69, 0x6c, 0x69, 0x74, 0x79, 0x61, 0x69, 0x2e, + 0x70, 0x6c, 0x61, 0x74, 0x66, 0x6f, 0x72, 0x6d, 0x61, 0x70, 0x69, 0x73, 0x2e, 0x70, 0x72, 0x6f, + 0x6a, 0x65, 0x63, 0x74, 0x2e, 0x76, 0x31, 0x2e, 0x50, 0x72, 0x6f, 0x6a, 0x65, 0x63, 0x74, 0x22, + 0x00, 0x12, 0x73, 0x0a, 0x06, 0x55, 0x70, 0x64, 0x61, 0x74, 0x65, 0x12, 0x39, 0x2e, 0x73, 0x74, + 0x61, 0x62, 0x69, 0x6c, 0x69, 0x74, 0x79, 0x61, 0x69, 0x2e, 0x70, 0x6c, 0x61, 0x74, 0x66, 0x6f, + 0x72, 0x6d, 0x61, 0x70, 0x69, 0x73, 0x2e, 0x70, 0x72, 0x6f, 0x6a, 0x65, 0x63, 0x74, 0x2e, 0x76, + 0x31, 0x2e, 0x55, 0x70, 0x64, 0x61, 0x74, 0x65, 0x50, 0x72, 0x6f, 0x6a, 0x65, 0x63, 0x74, 0x52, + 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x2c, 0x2e, 0x73, 0x74, 0x61, 0x62, 0x69, 0x6c, 0x69, + 0x74, 0x79, 0x61, 0x69, 0x2e, 0x70, 0x6c, 0x61, 0x74, 0x66, 0x6f, 0x72, 0x6d, 0x61, 0x70, 0x69, + 0x73, 0x2e, 0x70, 0x72, 0x6f, 0x6a, 0x65, 0x63, 0x74, 0x2e, 0x76, 0x31, 0x2e, 0x50, 0x72, 0x6f, + 0x6a, 0x65, 0x63, 0x74, 0x22, 0x00, 0x12, 0x71, 0x0a, 0x04, 0x4c, 0x69, 0x73, 0x74, 0x12, 0x37, + 0x2e, 0x73, 0x74, 0x61, 0x62, 0x69, 0x6c, 0x69, 0x74, 0x79, 0x61, 0x69, 0x2e, 0x70, 0x6c, 0x61, + 0x74, 0x66, 0x6f, 0x72, 0x6d, 0x61, 0x70, 0x69, 0x73, 0x2e, 0x70, 0x72, 0x6f, 0x6a, 0x65, 0x63, + 0x74, 0x2e, 0x76, 0x31, 0x2e, 0x4c, 0x69, 0x73, 0x74, 0x50, 0x72, 0x6f, 0x6a, 0x65, 0x63, 0x74, + 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x2c, 0x2e, 0x73, 0x74, 0x61, 0x62, 0x69, 0x6c, + 0x69, 0x74, 0x79, 0x61, 0x69, 0x2e, 0x70, 0x6c, 0x61, 0x74, 0x66, 0x6f, 0x72, 0x6d, 0x61, 0x70, + 0x69, 0x73, 0x2e, 0x70, 0x72, 0x6f, 0x6a, 0x65, 0x63, 0x74, 0x2e, 0x76, 0x31, 0x2e, 0x50, 0x72, + 0x6f, 0x6a, 0x65, 0x63, 0x74, 0x22, 0x00, 0x30, 0x01, 0x12, 0x6d, 0x0a, 0x03, 0x47, 0x65, 0x74, + 0x12, 0x36, 0x2e, 0x73, 0x74, 0x61, 0x62, 0x69, 0x6c, 0x69, 0x74, 0x79, 0x61, 0x69, 0x2e, 0x70, + 0x6c, 0x61, 0x74, 0x66, 0x6f, 0x72, 0x6d, 0x61, 0x70, 0x69, 0x73, 0x2e, 0x70, 0x72, 0x6f, 0x6a, + 0x65, 0x63, 0x74, 0x2e, 0x76, 0x31, 0x2e, 0x47, 0x65, 0x74, 0x50, 0x72, 0x6f, 0x6a, 0x65, 0x63, + 0x74, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x2c, 0x2e, 0x73, 0x74, 0x61, 0x62, 0x69, + 0x6c, 0x69, 0x74, 0x79, 0x61, 0x69, 0x2e, 0x70, 0x6c, 0x61, 0x74, 0x66, 0x6f, 0x72, 0x6d, 0x61, + 0x70, 0x69, 0x73, 0x2e, 0x70, 0x72, 0x6f, 0x6a, 0x65, 0x63, 0x74, 0x2e, 0x76, 0x31, 0x2e, 0x50, + 0x72, 0x6f, 0x6a, 0x65, 0x63, 0x74, 0x22, 0x00, 0x12, 0x73, 0x0a, 0x06, 0x44, 0x65, 0x6c, 0x65, + 0x74, 0x65, 0x12, 0x39, 0x2e, 0x73, 0x74, 0x61, 0x62, 0x69, 0x6c, 0x69, 0x74, 0x79, 0x61, 0x69, + 0x2e, 0x70, 0x6c, 0x61, 0x74, 0x66, 0x6f, 0x72, 0x6d, 0x61, 0x70, 0x69, 0x73, 0x2e, 0x70, 0x72, + 0x6f, 0x6a, 0x65, 0x63, 0x74, 0x2e, 0x76, 0x31, 0x2e, 0x44, 0x65, 0x6c, 0x65, 0x74, 0x65, 0x50, + 0x72, 0x6f, 0x6a, 0x65, 0x63, 0x74, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x2c, 0x2e, + 0x73, 0x74, 0x61, 0x62, 0x69, 0x6c, 0x69, 0x74, 0x79, 0x61, 0x69, 0x2e, 0x70, 0x6c, 0x61, 0x74, + 0x66, 0x6f, 0x72, 0x6d, 0x61, 0x70, 0x69, 0x73, 0x2e, 0x70, 0x72, 0x6f, 0x6a, 0x65, 0x63, 0x74, + 0x2e, 0x76, 0x31, 0x2e, 0x50, 0x72, 0x6f, 0x6a, 0x65, 0x63, 0x74, 0x22, 0x00, 0x12, 0x7c, 0x0a, + 0x09, 0x54, 0x61, 0x67, 0x41, 0x73, 0x73, 0x65, 0x74, 0x73, 0x12, 0x35, 0x2e, 0x73, 0x74, 0x61, + 0x62, 0x69, 0x6c, 0x69, 0x74, 0x79, 0x61, 0x69, 0x2e, 0x70, 0x6c, 0x61, 0x74, 0x66, 0x6f, 0x72, + 0x6d, 0x61, 0x70, 0x69, 0x73, 0x2e, 0x70, 0x72, 0x6f, 0x6a, 0x65, 0x63, 0x74, 0x2e, 0x76, 0x31, + 0x2e, 0x54, 0x61, 0x67, 0x41, 0x73, 0x73, 0x65, 0x74, 0x73, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, + 0x74, 0x1a, 0x36, 0x2e, 0x73, 0x74, 0x61, 0x62, 0x69, 0x6c, 0x69, 0x74, 0x79, 0x61, 0x69, 0x2e, + 0x70, 0x6c, 0x61, 0x74, 0x66, 0x6f, 0x72, 0x6d, 0x61, 0x70, 0x69, 0x73, 0x2e, 0x70, 0x72, 0x6f, + 0x6a, 0x65, 0x63, 0x74, 0x2e, 0x76, 0x31, 0x2e, 0x54, 0x61, 0x67, 0x41, 0x73, 0x73, 0x65, 0x74, + 0x73, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x22, 0x00, 0x12, 0x82, 0x01, 0x0a, 0x0b, + 0x55, 0x6e, 0x74, 0x61, 0x67, 0x41, 0x73, 0x73, 0x65, 0x74, 0x73, 0x12, 0x37, 0x2e, 0x73, 0x74, + 0x61, 0x62, 0x69, 0x6c, 0x69, 0x74, 0x79, 0x61, 0x69, 0x2e, 0x70, 0x6c, 0x61, 0x74, 0x66, 0x6f, + 0x72, 0x6d, 0x61, 0x70, 0x69, 0x73, 0x2e, 0x70, 0x72, 0x6f, 0x6a, 0x65, 0x63, 0x74, 0x2e, 0x76, + 0x31, 0x2e, 0x55, 0x6e, 0x74, 0x61, 0x67, 0x41, 0x73, 0x73, 0x65, 0x74, 0x73, 0x52, 0x65, 0x71, + 0x75, 0x65, 0x73, 0x74, 0x1a, 0x38, 0x2e, 0x73, 0x74, 0x61, 0x62, 0x69, 0x6c, 0x69, 0x74, 0x79, + 0x61, 0x69, 0x2e, 0x70, 0x6c, 0x61, 0x74, 0x66, 0x6f, 0x72, 0x6d, 0x61, 0x70, 0x69, 0x73, 0x2e, + 0x70, 0x72, 0x6f, 0x6a, 0x65, 0x63, 0x74, 0x2e, 0x76, 0x31, 0x2e, 0x55, 0x6e, 0x74, 0x61, 0x67, + 0x41, 0x73, 0x73, 0x65, 0x74, 0x73, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x22, 0x00, + 0x12, 0x82, 0x01, 0x0a, 0x0b, 0x51, 0x75, 0x65, 0x72, 0x79, 0x41, 0x73, 0x73, 0x65, 0x74, 0x73, + 0x12, 0x37, 0x2e, 0x73, 0x74, 0x61, 0x62, 0x69, 0x6c, 0x69, 0x74, 0x79, 0x61, 0x69, 0x2e, 0x70, + 0x6c, 0x61, 0x74, 0x66, 0x6f, 0x72, 0x6d, 0x61, 0x70, 0x69, 0x73, 0x2e, 0x70, 0x72, 0x6f, 0x6a, + 0x65, 0x63, 0x74, 0x2e, 0x76, 0x31, 0x2e, 0x51, 0x75, 0x65, 0x72, 0x79, 0x41, 0x73, 0x73, 0x65, + 0x74, 0x73, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x38, 0x2e, 0x73, 0x74, 0x61, 0x62, + 0x69, 0x6c, 0x69, 0x74, 0x79, 0x61, 0x69, 0x2e, 0x70, 0x6c, 0x61, 0x74, 0x66, 0x6f, 0x72, 0x6d, + 0x61, 0x70, 0x69, 0x73, 0x2e, 0x70, 0x72, 0x6f, 0x6a, 0x65, 0x63, 0x74, 0x2e, 0x76, 0x31, 0x2e, + 0x51, 0x75, 0x65, 0x72, 0x79, 0x41, 0x73, 0x73, 0x65, 0x74, 0x73, 0x52, 0x65, 0x73, 0x70, 0x6f, + 0x6e, 0x73, 0x65, 0x22, 0x00, 0x12, 0x85, 0x01, 0x0a, 0x0c, 0x44, 0x65, 0x6c, 0x65, 0x74, 0x65, + 0x41, 0x73, 0x73, 0x65, 0x74, 0x73, 0x12, 0x38, 0x2e, 0x73, 0x74, 0x61, 0x62, 0x69, 0x6c, 0x69, + 0x74, 0x79, 0x61, 0x69, 0x2e, 0x70, 0x6c, 0x61, 0x74, 0x66, 0x6f, 0x72, 0x6d, 0x61, 0x70, 0x69, + 0x73, 0x2e, 0x70, 0x72, 0x6f, 0x6a, 0x65, 0x63, 0x74, 0x2e, 0x76, 0x31, 0x2e, 0x44, 0x65, 0x6c, + 0x65, 0x74, 0x65, 0x41, 0x73, 0x73, 0x65, 0x74, 0x73, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, + 0x1a, 0x39, 0x2e, 0x73, 0x74, 0x61, 0x62, 0x69, 0x6c, 0x69, 0x74, 0x79, 0x61, 0x69, 0x2e, 0x70, + 0x6c, 0x61, 0x74, 0x66, 0x6f, 0x72, 0x6d, 0x61, 0x70, 0x69, 0x73, 0x2e, 0x70, 0x72, 0x6f, 0x6a, + 0x65, 0x63, 0x74, 0x2e, 0x76, 0x31, 0x2e, 0x44, 0x65, 0x6c, 0x65, 0x74, 0x65, 0x41, 0x73, 0x73, + 0x65, 0x74, 0x73, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x22, 0x00, 0x42, 0xbe, 0x02, + 0x0a, 0x27, 0x63, 0x6f, 0x6d, 0x2e, 0x73, 0x74, 0x61, 0x62, 0x69, 0x6c, 0x69, 0x74, 0x79, 0x61, + 0x69, 0x2e, 0x70, 0x6c, 0x61, 0x74, 0x66, 0x6f, 0x72, 0x6d, 0x61, 0x70, 0x69, 0x73, 0x2e, 0x70, + 0x72, 0x6f, 0x6a, 0x65, 0x63, 0x74, 0x2e, 0x76, 0x31, 0x42, 0x0c, 0x50, 0x72, 0x6f, 0x6a, 0x65, + 0x63, 0x74, 0x50, 0x72, 0x6f, 0x74, 0x6f, 0x50, 0x01, 0x5a, 0x56, 0x67, 0x69, 0x74, 0x68, 0x75, + 0x62, 0x2e, 0x63, 0x6f, 0x6d, 0x2f, 0x73, 0x74, 0x61, 0x62, 0x69, 0x6c, 0x69, 0x74, 0x79, 0x2d, + 0x61, 0x69, 0x2f, 0x61, 0x70, 0x69, 0x2d, 0x69, 0x6e, 0x74, 0x65, 0x72, 0x66, 0x61, 0x63, 0x65, + 0x73, 0x2f, 0x73, 0x72, 0x63, 0x2f, 0x73, 0x74, 0x61, 0x62, 0x69, 0x6c, 0x69, 0x74, 0x79, 0x5f, + 0x61, 0x70, 0x69, 0x2f, 0x70, 0x6c, 0x61, 0x74, 0x66, 0x6f, 0x72, 0x6d, 0x2f, 0x70, 0x72, 0x6f, + 0x6a, 0x65, 0x63, 0x74, 0x2f, 0x76, 0x31, 0x3b, 0x70, 0x72, 0x6f, 0x6a, 0x65, 0x63, 0x74, 0x76, + 0x31, 0xa2, 0x02, 0x03, 0x53, 0x50, 0x50, 0xaa, 0x02, 0x23, 0x53, 0x74, 0x61, 0x62, 0x69, 0x6c, + 0x69, 0x74, 0x79, 0x61, 0x69, 0x2e, 0x50, 0x6c, 0x61, 0x74, 0x66, 0x6f, 0x72, 0x6d, 0x61, 0x70, + 0x69, 0x73, 0x2e, 0x50, 0x72, 0x6f, 0x6a, 0x65, 0x63, 0x74, 0x2e, 0x56, 0x31, 0xca, 0x02, 0x23, + 0x53, 0x74, 0x61, 0x62, 0x69, 0x6c, 0x69, 0x74, 0x79, 0x61, 0x69, 0x5c, 0x50, 0x6c, 0x61, 0x74, + 0x66, 0x6f, 0x72, 0x6d, 0x61, 0x70, 0x69, 0x73, 0x5c, 0x50, 0x72, 0x6f, 0x6a, 0x65, 0x63, 0x74, + 0x5c, 0x56, 0x31, 0xe2, 0x02, 0x2f, 0x53, 0x74, 0x61, 0x62, 0x69, 0x6c, 0x69, 0x74, 0x79, 0x61, + 0x69, 0x5c, 0x50, 0x6c, 0x61, 0x74, 0x66, 0x6f, 0x72, 0x6d, 0x61, 0x70, 0x69, 0x73, 0x5c, 0x50, + 0x72, 0x6f, 0x6a, 0x65, 0x63, 0x74, 0x5c, 0x56, 0x31, 0x5c, 0x47, 0x50, 0x42, 0x4d, 0x65, 0x74, + 0x61, 0x64, 0x61, 0x74, 0x61, 0xea, 0x02, 0x26, 0x53, 0x74, 0x61, 0x62, 0x69, 0x6c, 0x69, 0x74, + 0x79, 0x61, 0x69, 0x3a, 0x3a, 0x50, 0x6c, 0x61, 0x74, 0x66, 0x6f, 0x72, 0x6d, 0x61, 0x70, 0x69, + 0x73, 0x3a, 0x3a, 0x50, 0x72, 0x6f, 0x6a, 0x65, 0x63, 0x74, 0x3a, 0x3a, 0x56, 0x31, 0x62, 0x06, + 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x33, +} + +var ( + file_stability_api_platform_project_v1_project_proto_rawDescOnce sync.Once + file_stability_api_platform_project_v1_project_proto_rawDescData = file_stability_api_platform_project_v1_project_proto_rawDesc +) + +func file_stability_api_platform_project_v1_project_proto_rawDescGZIP() []byte { + file_stability_api_platform_project_v1_project_proto_rawDescOnce.Do(func() { + file_stability_api_platform_project_v1_project_proto_rawDescData = protoimpl.X.CompressGZIP(file_stability_api_platform_project_v1_project_proto_rawDescData) + }) + return file_stability_api_platform_project_v1_project_proto_rawDescData +} + +var file_stability_api_platform_project_v1_project_proto_enumTypes = make([]protoimpl.EnumInfo, 5) +var file_stability_api_platform_project_v1_project_proto_msgTypes = make([]protoimpl.MessageInfo, 18) +var file_stability_api_platform_project_v1_project_proto_goTypes = []interface{}{ + (ProjectAccess)(0), // 0: stabilityai.platformapis.project.v1.ProjectAccess + (ProjectStatus)(0), // 1: stabilityai.platformapis.project.v1.ProjectStatus + (ProjectAssetUse)(0), // 2: stabilityai.platformapis.project.v1.ProjectAssetUse + (ProjectSortDir)(0), // 3: stabilityai.platformapis.project.v1.ProjectSortDir + (ProjectType)(0), // 4: stabilityai.platformapis.project.v1.ProjectType + (*ProjectAsset)(nil), // 5: stabilityai.platformapis.project.v1.ProjectAsset + (*Project)(nil), // 6: stabilityai.platformapis.project.v1.Project + (*CreateProjectRequest)(nil), // 7: stabilityai.platformapis.project.v1.CreateProjectRequest + (*UpdateProjectRequest)(nil), // 8: stabilityai.platformapis.project.v1.UpdateProjectRequest + (*ListProjectRequest)(nil), // 9: stabilityai.platformapis.project.v1.ListProjectRequest + (*GetProjectRequest)(nil), // 10: stabilityai.platformapis.project.v1.GetProjectRequest + (*DeleteProjectRequest)(nil), // 11: stabilityai.platformapis.project.v1.DeleteProjectRequest + (*QueryAssetsRequest)(nil), // 12: stabilityai.platformapis.project.v1.QueryAssetsRequest + (*QueryAssetsResponse)(nil), // 13: stabilityai.platformapis.project.v1.QueryAssetsResponse + (*TagAssetsRequest)(nil), // 14: stabilityai.platformapis.project.v1.TagAssetsRequest + (*TagAssetsResponse)(nil), // 15: stabilityai.platformapis.project.v1.TagAssetsResponse + (*UntagAssetsRequest)(nil), // 16: stabilityai.platformapis.project.v1.UntagAssetsRequest + (*UntagAssetsResponse)(nil), // 17: stabilityai.platformapis.project.v1.UntagAssetsResponse + (*DeleteAssetsRequest)(nil), // 18: stabilityai.platformapis.project.v1.DeleteAssetsRequest + (*DeleteAssetsResponse)(nil), // 19: stabilityai.platformapis.project.v1.DeleteAssetsResponse + nil, // 20: stabilityai.platformapis.project.v1.ProjectAsset.TagsEntry + nil, // 21: stabilityai.platformapis.project.v1.QueryAssetsRequest.TagsEntry + nil, // 22: stabilityai.platformapis.project.v1.TagAssetsRequest.TagsEntry + (*v1.Request)(nil), // 23: stabilityai.platformapis.generation.v1.Request +} +var file_stability_api_platform_project_v1_project_proto_depIdxs = []int32{ + 2, // 0: stabilityai.platformapis.project.v1.ProjectAsset.use:type_name -> stabilityai.platformapis.project.v1.ProjectAssetUse + 23, // 1: stabilityai.platformapis.project.v1.ProjectAsset.request:type_name -> stabilityai.platformapis.generation.v1.Request + 20, // 2: stabilityai.platformapis.project.v1.ProjectAsset.tags:type_name -> stabilityai.platformapis.project.v1.ProjectAsset.TagsEntry + 0, // 3: stabilityai.platformapis.project.v1.Project.access:type_name -> stabilityai.platformapis.project.v1.ProjectAccess + 1, // 4: stabilityai.platformapis.project.v1.Project.status:type_name -> stabilityai.platformapis.project.v1.ProjectStatus + 5, // 5: stabilityai.platformapis.project.v1.Project.file:type_name -> stabilityai.platformapis.project.v1.ProjectAsset + 5, // 6: stabilityai.platformapis.project.v1.Project.assets:type_name -> stabilityai.platformapis.project.v1.ProjectAsset + 4, // 7: stabilityai.platformapis.project.v1.Project.type:type_name -> stabilityai.platformapis.project.v1.ProjectType + 0, // 8: stabilityai.platformapis.project.v1.CreateProjectRequest.access:type_name -> stabilityai.platformapis.project.v1.ProjectAccess + 1, // 9: stabilityai.platformapis.project.v1.CreateProjectRequest.status:type_name -> stabilityai.platformapis.project.v1.ProjectStatus + 5, // 10: stabilityai.platformapis.project.v1.CreateProjectRequest.file:type_name -> stabilityai.platformapis.project.v1.ProjectAsset + 4, // 11: stabilityai.platformapis.project.v1.CreateProjectRequest.type:type_name -> stabilityai.platformapis.project.v1.ProjectType + 0, // 12: stabilityai.platformapis.project.v1.UpdateProjectRequest.access:type_name -> stabilityai.platformapis.project.v1.ProjectAccess + 1, // 13: stabilityai.platformapis.project.v1.UpdateProjectRequest.status:type_name -> stabilityai.platformapis.project.v1.ProjectStatus + 5, // 14: stabilityai.platformapis.project.v1.UpdateProjectRequest.file:type_name -> stabilityai.platformapis.project.v1.ProjectAsset + 4, // 15: stabilityai.platformapis.project.v1.UpdateProjectRequest.type:type_name -> stabilityai.platformapis.project.v1.ProjectType + 2, // 16: stabilityai.platformapis.project.v1.QueryAssetsRequest.use:type_name -> stabilityai.platformapis.project.v1.ProjectAssetUse + 3, // 17: stabilityai.platformapis.project.v1.QueryAssetsRequest.sort_dir:type_name -> stabilityai.platformapis.project.v1.ProjectSortDir + 21, // 18: stabilityai.platformapis.project.v1.QueryAssetsRequest.tags:type_name -> stabilityai.platformapis.project.v1.QueryAssetsRequest.TagsEntry + 5, // 19: stabilityai.platformapis.project.v1.QueryAssetsResponse.assets:type_name -> stabilityai.platformapis.project.v1.ProjectAsset + 22, // 20: stabilityai.platformapis.project.v1.TagAssetsRequest.tags:type_name -> stabilityai.platformapis.project.v1.TagAssetsRequest.TagsEntry + 7, // 21: stabilityai.platformapis.project.v1.ProjectService.Create:input_type -> stabilityai.platformapis.project.v1.CreateProjectRequest + 8, // 22: stabilityai.platformapis.project.v1.ProjectService.Update:input_type -> stabilityai.platformapis.project.v1.UpdateProjectRequest + 9, // 23: stabilityai.platformapis.project.v1.ProjectService.List:input_type -> stabilityai.platformapis.project.v1.ListProjectRequest + 10, // 24: stabilityai.platformapis.project.v1.ProjectService.Get:input_type -> stabilityai.platformapis.project.v1.GetProjectRequest + 11, // 25: stabilityai.platformapis.project.v1.ProjectService.Delete:input_type -> stabilityai.platformapis.project.v1.DeleteProjectRequest + 14, // 26: stabilityai.platformapis.project.v1.ProjectService.TagAssets:input_type -> stabilityai.platformapis.project.v1.TagAssetsRequest + 16, // 27: stabilityai.platformapis.project.v1.ProjectService.UntagAssets:input_type -> stabilityai.platformapis.project.v1.UntagAssetsRequest + 12, // 28: stabilityai.platformapis.project.v1.ProjectService.QueryAssets:input_type -> stabilityai.platformapis.project.v1.QueryAssetsRequest + 18, // 29: stabilityai.platformapis.project.v1.ProjectService.DeleteAssets:input_type -> stabilityai.platformapis.project.v1.DeleteAssetsRequest + 6, // 30: stabilityai.platformapis.project.v1.ProjectService.Create:output_type -> stabilityai.platformapis.project.v1.Project + 6, // 31: stabilityai.platformapis.project.v1.ProjectService.Update:output_type -> stabilityai.platformapis.project.v1.Project + 6, // 32: stabilityai.platformapis.project.v1.ProjectService.List:output_type -> stabilityai.platformapis.project.v1.Project + 6, // 33: stabilityai.platformapis.project.v1.ProjectService.Get:output_type -> stabilityai.platformapis.project.v1.Project + 6, // 34: stabilityai.platformapis.project.v1.ProjectService.Delete:output_type -> stabilityai.platformapis.project.v1.Project + 15, // 35: stabilityai.platformapis.project.v1.ProjectService.TagAssets:output_type -> stabilityai.platformapis.project.v1.TagAssetsResponse + 17, // 36: stabilityai.platformapis.project.v1.ProjectService.UntagAssets:output_type -> stabilityai.platformapis.project.v1.UntagAssetsResponse + 13, // 37: stabilityai.platformapis.project.v1.ProjectService.QueryAssets:output_type -> stabilityai.platformapis.project.v1.QueryAssetsResponse + 19, // 38: stabilityai.platformapis.project.v1.ProjectService.DeleteAssets:output_type -> stabilityai.platformapis.project.v1.DeleteAssetsResponse + 30, // [30:39] is the sub-list for method output_type + 21, // [21:30] is the sub-list for method input_type + 21, // [21:21] is the sub-list for extension type_name + 21, // [21:21] is the sub-list for extension extendee + 0, // [0:21] is the sub-list for field type_name +} + +func init() { file_stability_api_platform_project_v1_project_proto_init() } +func file_stability_api_platform_project_v1_project_proto_init() { + if File_stability_api_platform_project_v1_project_proto != nil { + return + } + if !protoimpl.UnsafeEnabled { + file_stability_api_platform_project_v1_project_proto_msgTypes[0].Exporter = func(v interface{}, i int) interface{} { + switch v := v.(*ProjectAsset); i { + case 0: + return &v.state + case 1: + return &v.sizeCache + case 2: + return &v.unknownFields + default: + return nil + } + } + file_stability_api_platform_project_v1_project_proto_msgTypes[1].Exporter = func(v interface{}, i int) interface{} { + switch v := v.(*Project); i { + case 0: + return &v.state + case 1: + return &v.sizeCache + case 2: + return &v.unknownFields + default: + return nil + } + } + file_stability_api_platform_project_v1_project_proto_msgTypes[2].Exporter = func(v interface{}, i int) interface{} { + switch v := v.(*CreateProjectRequest); i { + case 0: + return &v.state + case 1: + return &v.sizeCache + case 2: + return &v.unknownFields + default: + return nil + } + } + file_stability_api_platform_project_v1_project_proto_msgTypes[3].Exporter = func(v interface{}, i int) interface{} { + switch v := v.(*UpdateProjectRequest); i { + case 0: + return &v.state + case 1: + return &v.sizeCache + case 2: + return &v.unknownFields + default: + return nil + } + } + file_stability_api_platform_project_v1_project_proto_msgTypes[4].Exporter = func(v interface{}, i int) interface{} { + switch v := v.(*ListProjectRequest); i { + case 0: + return &v.state + case 1: + return &v.sizeCache + case 2: + return &v.unknownFields + default: + return nil + } + } + file_stability_api_platform_project_v1_project_proto_msgTypes[5].Exporter = func(v interface{}, i int) interface{} { + switch v := v.(*GetProjectRequest); i { + case 0: + return &v.state + case 1: + return &v.sizeCache + case 2: + return &v.unknownFields + default: + return nil + } + } + file_stability_api_platform_project_v1_project_proto_msgTypes[6].Exporter = func(v interface{}, i int) interface{} { + switch v := v.(*DeleteProjectRequest); i { + case 0: + return &v.state + case 1: + return &v.sizeCache + case 2: + return &v.unknownFields + default: + return nil + } + } + file_stability_api_platform_project_v1_project_proto_msgTypes[7].Exporter = func(v interface{}, i int) interface{} { + switch v := v.(*QueryAssetsRequest); i { + case 0: + return &v.state + case 1: + return &v.sizeCache + case 2: + return &v.unknownFields + default: + return nil + } + } + file_stability_api_platform_project_v1_project_proto_msgTypes[8].Exporter = func(v interface{}, i int) interface{} { + switch v := v.(*QueryAssetsResponse); i { + case 0: + return &v.state + case 1: + return &v.sizeCache + case 2: + return &v.unknownFields + default: + return nil + } + } + file_stability_api_platform_project_v1_project_proto_msgTypes[9].Exporter = func(v interface{}, i int) interface{} { + switch v := v.(*TagAssetsRequest); i { + case 0: + return &v.state + case 1: + return &v.sizeCache + case 2: + return &v.unknownFields + default: + return nil + } + } + file_stability_api_platform_project_v1_project_proto_msgTypes[10].Exporter = func(v interface{}, i int) interface{} { + switch v := v.(*TagAssetsResponse); i { + case 0: + return &v.state + case 1: + return &v.sizeCache + case 2: + return &v.unknownFields + default: + return nil + } + } + file_stability_api_platform_project_v1_project_proto_msgTypes[11].Exporter = func(v interface{}, i int) interface{} { + switch v := v.(*UntagAssetsRequest); i { + case 0: + return &v.state + case 1: + return &v.sizeCache + case 2: + return &v.unknownFields + default: + return nil + } + } + file_stability_api_platform_project_v1_project_proto_msgTypes[12].Exporter = func(v interface{}, i int) interface{} { + switch v := v.(*UntagAssetsResponse); i { + case 0: + return &v.state + case 1: + return &v.sizeCache + case 2: + return &v.unknownFields + default: + return nil + } + } + file_stability_api_platform_project_v1_project_proto_msgTypes[13].Exporter = func(v interface{}, i int) interface{} { + switch v := v.(*DeleteAssetsRequest); i { + case 0: + return &v.state + case 1: + return &v.sizeCache + case 2: + return &v.unknownFields + default: + return nil + } + } + file_stability_api_platform_project_v1_project_proto_msgTypes[14].Exporter = func(v interface{}, i int) interface{} { + switch v := v.(*DeleteAssetsResponse); i { + case 0: + return &v.state + case 1: + return &v.sizeCache + case 2: + return &v.unknownFields + default: + return nil + } + } + } + file_stability_api_platform_project_v1_project_proto_msgTypes[2].OneofWrappers = []interface{}{} + file_stability_api_platform_project_v1_project_proto_msgTypes[3].OneofWrappers = []interface{}{} + file_stability_api_platform_project_v1_project_proto_msgTypes[4].OneofWrappers = []interface{}{} + file_stability_api_platform_project_v1_project_proto_msgTypes[5].OneofWrappers = []interface{}{} + file_stability_api_platform_project_v1_project_proto_msgTypes[6].OneofWrappers = []interface{}{} + file_stability_api_platform_project_v1_project_proto_msgTypes[7].OneofWrappers = []interface{}{} + file_stability_api_platform_project_v1_project_proto_msgTypes[8].OneofWrappers = []interface{}{} + file_stability_api_platform_project_v1_project_proto_msgTypes[9].OneofWrappers = []interface{}{} + file_stability_api_platform_project_v1_project_proto_msgTypes[11].OneofWrappers = []interface{}{} + file_stability_api_platform_project_v1_project_proto_msgTypes[13].OneofWrappers = []interface{}{} + type x struct{} + out := protoimpl.TypeBuilder{ + File: protoimpl.DescBuilder{ + GoPackagePath: reflect.TypeOf(x{}).PkgPath(), + RawDescriptor: file_stability_api_platform_project_v1_project_proto_rawDesc, + NumEnums: 5, + NumMessages: 18, + NumExtensions: 0, + NumServices: 1, + }, + GoTypes: file_stability_api_platform_project_v1_project_proto_goTypes, + DependencyIndexes: file_stability_api_platform_project_v1_project_proto_depIdxs, + EnumInfos: file_stability_api_platform_project_v1_project_proto_enumTypes, + MessageInfos: file_stability_api_platform_project_v1_project_proto_msgTypes, + }.Build() + File_stability_api_platform_project_v1_project_proto = out.File + file_stability_api_platform_project_v1_project_proto_rawDesc = nil + file_stability_api_platform_project_v1_project_proto_goTypes = nil + file_stability_api_platform_project_v1_project_proto_depIdxs = nil +} diff --git a/src/stability_api/platform/project/v1/project_connect.d.ts b/src/stability_api/platform/project/v1/project_connect.d.ts new file mode 100644 index 0000000..d697fe7 --- /dev/null +++ b/src/stability_api/platform/project/v1/project_connect.d.ts @@ -0,0 +1,118 @@ +// @generated by protoc-gen-connect-es v0.12.0 +// @generated from file stability_api/platform/project/v1/project.proto (package stabilityai.platformapis.project.v1, syntax proto3) +/* eslint-disable */ +// @ts-nocheck + +import { CreateProjectRequest, DeleteAssetsRequest, DeleteAssetsResponse, DeleteProjectRequest, GetProjectRequest, ListProjectRequest, Project, QueryAssetsRequest, QueryAssetsResponse, TagAssetsRequest, TagAssetsResponse, UntagAssetsRequest, UntagAssetsResponse, UpdateProjectRequest } from "./project_pb.js"; +import { MethodKind } from "@bufbuild/protobuf"; + +/** + * + * gRPC services + * + * + * @generated from service stabilityai.platformapis.project.v1.ProjectService + */ +export declare const ProjectService: { + readonly typeName: "stabilityai.platformapis.project.v1.ProjectService", + readonly methods: { + /** + * Create a new project if it does not exist + * + * @generated from rpc stabilityai.platformapis.project.v1.ProjectService.Create + */ + readonly create: { + readonly name: "Create", + readonly I: typeof CreateProjectRequest, + readonly O: typeof Project, + readonly kind: MethodKind.Unary, + }, + /** + * Update an existing project + * + * @generated from rpc stabilityai.platformapis.project.v1.ProjectService.Update + */ + readonly update: { + readonly name: "Update", + readonly I: typeof UpdateProjectRequest, + readonly O: typeof Project, + readonly kind: MethodKind.Unary, + }, + /** + * List all the projects for an organization + * + * @generated from rpc stabilityai.platformapis.project.v1.ProjectService.List + */ + readonly list: { + readonly name: "List", + readonly I: typeof ListProjectRequest, + readonly O: typeof Project, + readonly kind: MethodKind.ServerStreaming, + }, + /** + * Get a project + * + * @generated from rpc stabilityai.platformapis.project.v1.ProjectService.Get + */ + readonly get: { + readonly name: "Get", + readonly I: typeof GetProjectRequest, + readonly O: typeof Project, + readonly kind: MethodKind.Unary, + }, + /** + * Delete a project + * + * @generated from rpc stabilityai.platformapis.project.v1.ProjectService.Delete + */ + readonly delete: { + readonly name: "Delete", + readonly I: typeof DeleteProjectRequest, + readonly O: typeof Project, + readonly kind: MethodKind.Unary, + }, + /** + * Add or remove tags from an asset + * + * @generated from rpc stabilityai.platformapis.project.v1.ProjectService.TagAssets + */ + readonly tagAssets: { + readonly name: "TagAssets", + readonly I: typeof TagAssetsRequest, + readonly O: typeof TagAssetsResponse, + readonly kind: MethodKind.Unary, + }, + /** + * @generated from rpc stabilityai.platformapis.project.v1.ProjectService.UntagAssets + */ + readonly untagAssets: { + readonly name: "UntagAssets", + readonly I: typeof UntagAssetsRequest, + readonly O: typeof UntagAssetsResponse, + readonly kind: MethodKind.Unary, + }, + /** + * Query the assets of a project, with additional filtering + * + * @generated from rpc stabilityai.platformapis.project.v1.ProjectService.QueryAssets + */ + readonly queryAssets: { + readonly name: "QueryAssets", + readonly I: typeof QueryAssetsRequest, + readonly O: typeof QueryAssetsResponse, + readonly kind: MethodKind.Unary, + }, + /** + * Delete one or more assets of a project + * + * @generated from rpc stabilityai.platformapis.project.v1.ProjectService.DeleteAssets + */ + readonly deleteAssets: { + readonly name: "DeleteAssets", + readonly I: typeof DeleteAssetsRequest, + readonly O: typeof DeleteAssetsResponse, + readonly kind: MethodKind.Unary, + }, + } +}; + diff --git a/src/stability_api/platform/project/v1/project_connect.js b/src/stability_api/platform/project/v1/project_connect.js new file mode 100644 index 0000000..95952d5 --- /dev/null +++ b/src/stability_api/platform/project/v1/project_connect.js @@ -0,0 +1,118 @@ +// @generated by protoc-gen-connect-es v0.12.0 +// @generated from file stability_api/platform/project/v1/project.proto (package stabilityai.platformapis.project.v1, syntax proto3) +/* eslint-disable */ +// @ts-nocheck + +import { CreateProjectRequest, DeleteAssetsRequest, DeleteAssetsResponse, DeleteProjectRequest, GetProjectRequest, ListProjectRequest, Project, QueryAssetsRequest, QueryAssetsResponse, TagAssetsRequest, TagAssetsResponse, UntagAssetsRequest, UntagAssetsResponse, UpdateProjectRequest } from "./project_pb.js"; +import { MethodKind } from "@bufbuild/protobuf"; + +/** + * + * gRPC services + * + * + * @generated from service stabilityai.platformapis.project.v1.ProjectService + */ +export const ProjectService = { + typeName: "stabilityai.platformapis.project.v1.ProjectService", + methods: { + /** + * Create a new project if it does not exist + * + * @generated from rpc stabilityai.platformapis.project.v1.ProjectService.Create + */ + create: { + name: "Create", + I: CreateProjectRequest, + O: Project, + kind: MethodKind.Unary, + }, + /** + * Update an existing project + * + * @generated from rpc stabilityai.platformapis.project.v1.ProjectService.Update + */ + update: { + name: "Update", + I: UpdateProjectRequest, + O: Project, + kind: MethodKind.Unary, + }, + /** + * List all the projects for an organization + * + * @generated from rpc stabilityai.platformapis.project.v1.ProjectService.List + */ + list: { + name: "List", + I: ListProjectRequest, + O: Project, + kind: MethodKind.ServerStreaming, + }, + /** + * Get a project + * + * @generated from rpc stabilityai.platformapis.project.v1.ProjectService.Get + */ + get: { + name: "Get", + I: GetProjectRequest, + O: Project, + kind: MethodKind.Unary, + }, + /** + * Delete a project + * + * @generated from rpc stabilityai.platformapis.project.v1.ProjectService.Delete + */ + delete: { + name: "Delete", + I: DeleteProjectRequest, + O: Project, + kind: MethodKind.Unary, + }, + /** + * Add or remove tags from an asset + * + * @generated from rpc stabilityai.platformapis.project.v1.ProjectService.TagAssets + */ + tagAssets: { + name: "TagAssets", + I: TagAssetsRequest, + O: TagAssetsResponse, + kind: MethodKind.Unary, + }, + /** + * @generated from rpc stabilityai.platformapis.project.v1.ProjectService.UntagAssets + */ + untagAssets: { + name: "UntagAssets", + I: UntagAssetsRequest, + O: UntagAssetsResponse, + kind: MethodKind.Unary, + }, + /** + * Query the assets of a project, with additional filtering + * + * @generated from rpc stabilityai.platformapis.project.v1.ProjectService.QueryAssets + */ + queryAssets: { + name: "QueryAssets", + I: QueryAssetsRequest, + O: QueryAssetsResponse, + kind: MethodKind.Unary, + }, + /** + * Delete one or more assets of a project + * + * @generated from rpc stabilityai.platformapis.project.v1.ProjectService.DeleteAssets + */ + deleteAssets: { + name: "DeleteAssets", + I: DeleteAssetsRequest, + O: DeleteAssetsResponse, + kind: MethodKind.Unary, + }, + } +}; + diff --git a/src/stability_api/platform/project/v1/project_grpc.pb.go b/src/stability_api/platform/project/v1/project_grpc.pb.go new file mode 100644 index 0000000..43d4f10 --- /dev/null +++ b/src/stability_api/platform/project/v1/project_grpc.pb.go @@ -0,0 +1,449 @@ +// Code generated by protoc-gen-go-grpc. DO NOT EDIT. +// versions: +// - protoc-gen-go-grpc v1.3.0 +// - protoc (unknown) +// source: stability_api/platform/project/v1/project.proto + +package projectv1 + +import ( + context "context" + grpc "google.golang.org/grpc" + codes "google.golang.org/grpc/codes" + status "google.golang.org/grpc/status" +) + +// This is a compile-time assertion to ensure that this generated file +// is compatible with the grpc package it is being compiled against. +// Requires gRPC-Go v1.32.0 or later. +const _ = grpc.SupportPackageIsVersion7 + +const ( + ProjectService_Create_FullMethodName = "/stabilityai.platformapis.project.v1.ProjectService/Create" + ProjectService_Update_FullMethodName = "/stabilityai.platformapis.project.v1.ProjectService/Update" + ProjectService_List_FullMethodName = "/stabilityai.platformapis.project.v1.ProjectService/List" + ProjectService_Get_FullMethodName = "/stabilityai.platformapis.project.v1.ProjectService/Get" + ProjectService_Delete_FullMethodName = "/stabilityai.platformapis.project.v1.ProjectService/Delete" + ProjectService_TagAssets_FullMethodName = "/stabilityai.platformapis.project.v1.ProjectService/TagAssets" + ProjectService_UntagAssets_FullMethodName = "/stabilityai.platformapis.project.v1.ProjectService/UntagAssets" + ProjectService_QueryAssets_FullMethodName = "/stabilityai.platformapis.project.v1.ProjectService/QueryAssets" + ProjectService_DeleteAssets_FullMethodName = "/stabilityai.platformapis.project.v1.ProjectService/DeleteAssets" +) + +// ProjectServiceClient is the client API for ProjectService service. +// +// For semantics around ctx use and closing/ending streaming RPCs, please refer to https://pkg.go.dev/google.golang.org/grpc/?tab=doc#ClientConn.NewStream. +type ProjectServiceClient interface { + // Create a new project if it does not exist + Create(ctx context.Context, in *CreateProjectRequest, opts ...grpc.CallOption) (*Project, error) + // Update an existing project + Update(ctx context.Context, in *UpdateProjectRequest, opts ...grpc.CallOption) (*Project, error) + // List all the projects for an organization + List(ctx context.Context, in *ListProjectRequest, opts ...grpc.CallOption) (ProjectService_ListClient, error) + // Get a project + Get(ctx context.Context, in *GetProjectRequest, opts ...grpc.CallOption) (*Project, error) + // Delete a project + Delete(ctx context.Context, in *DeleteProjectRequest, opts ...grpc.CallOption) (*Project, error) + // Add or remove tags from an asset + TagAssets(ctx context.Context, in *TagAssetsRequest, opts ...grpc.CallOption) (*TagAssetsResponse, error) + UntagAssets(ctx context.Context, in *UntagAssetsRequest, opts ...grpc.CallOption) (*UntagAssetsResponse, error) + // Query the assets of a project, with additional filtering + QueryAssets(ctx context.Context, in *QueryAssetsRequest, opts ...grpc.CallOption) (*QueryAssetsResponse, error) + // Delete one or more assets of a project + DeleteAssets(ctx context.Context, in *DeleteAssetsRequest, opts ...grpc.CallOption) (*DeleteAssetsResponse, error) +} + +type projectServiceClient struct { + cc grpc.ClientConnInterface +} + +func NewProjectServiceClient(cc grpc.ClientConnInterface) ProjectServiceClient { + return &projectServiceClient{cc} +} + +func (c *projectServiceClient) Create(ctx context.Context, in *CreateProjectRequest, opts ...grpc.CallOption) (*Project, error) { + out := new(Project) + err := c.cc.Invoke(ctx, ProjectService_Create_FullMethodName, in, out, opts...) + if err != nil { + return nil, err + } + return out, nil +} + +func (c *projectServiceClient) Update(ctx context.Context, in *UpdateProjectRequest, opts ...grpc.CallOption) (*Project, error) { + out := new(Project) + err := c.cc.Invoke(ctx, ProjectService_Update_FullMethodName, in, out, opts...) + if err != nil { + return nil, err + } + return out, nil +} + +func (c *projectServiceClient) List(ctx context.Context, in *ListProjectRequest, opts ...grpc.CallOption) (ProjectService_ListClient, error) { + stream, err := c.cc.NewStream(ctx, &ProjectService_ServiceDesc.Streams[0], ProjectService_List_FullMethodName, opts...) + if err != nil { + return nil, err + } + x := &projectServiceListClient{stream} + if err := x.ClientStream.SendMsg(in); err != nil { + return nil, err + } + if err := x.ClientStream.CloseSend(); err != nil { + return nil, err + } + return x, nil +} + +type ProjectService_ListClient interface { + Recv() (*Project, error) + grpc.ClientStream +} + +type projectServiceListClient struct { + grpc.ClientStream +} + +func (x *projectServiceListClient) Recv() (*Project, error) { + m := new(Project) + if err := x.ClientStream.RecvMsg(m); err != nil { + return nil, err + } + return m, nil +} + +func (c *projectServiceClient) Get(ctx context.Context, in *GetProjectRequest, opts ...grpc.CallOption) (*Project, error) { + out := new(Project) + err := c.cc.Invoke(ctx, ProjectService_Get_FullMethodName, in, out, opts...) + if err != nil { + return nil, err + } + return out, nil +} + +func (c *projectServiceClient) Delete(ctx context.Context, in *DeleteProjectRequest, opts ...grpc.CallOption) (*Project, error) { + out := new(Project) + err := c.cc.Invoke(ctx, ProjectService_Delete_FullMethodName, in, out, opts...) + if err != nil { + return nil, err + } + return out, nil +} + +func (c *projectServiceClient) TagAssets(ctx context.Context, in *TagAssetsRequest, opts ...grpc.CallOption) (*TagAssetsResponse, error) { + out := new(TagAssetsResponse) + err := c.cc.Invoke(ctx, ProjectService_TagAssets_FullMethodName, in, out, opts...) + if err != nil { + return nil, err + } + return out, nil +} + +func (c *projectServiceClient) UntagAssets(ctx context.Context, in *UntagAssetsRequest, opts ...grpc.CallOption) (*UntagAssetsResponse, error) { + out := new(UntagAssetsResponse) + err := c.cc.Invoke(ctx, ProjectService_UntagAssets_FullMethodName, in, out, opts...) + if err != nil { + return nil, err + } + return out, nil +} + +func (c *projectServiceClient) QueryAssets(ctx context.Context, in *QueryAssetsRequest, opts ...grpc.CallOption) (*QueryAssetsResponse, error) { + out := new(QueryAssetsResponse) + err := c.cc.Invoke(ctx, ProjectService_QueryAssets_FullMethodName, in, out, opts...) + if err != nil { + return nil, err + } + return out, nil +} + +func (c *projectServiceClient) DeleteAssets(ctx context.Context, in *DeleteAssetsRequest, opts ...grpc.CallOption) (*DeleteAssetsResponse, error) { + out := new(DeleteAssetsResponse) + err := c.cc.Invoke(ctx, ProjectService_DeleteAssets_FullMethodName, in, out, opts...) + if err != nil { + return nil, err + } + return out, nil +} + +// ProjectServiceServer is the server API for ProjectService service. +// All implementations must embed UnimplementedProjectServiceServer +// for forward compatibility +type ProjectServiceServer interface { + // Create a new project if it does not exist + Create(context.Context, *CreateProjectRequest) (*Project, error) + // Update an existing project + Update(context.Context, *UpdateProjectRequest) (*Project, error) + // List all the projects for an organization + List(*ListProjectRequest, ProjectService_ListServer) error + // Get a project + Get(context.Context, *GetProjectRequest) (*Project, error) + // Delete a project + Delete(context.Context, *DeleteProjectRequest) (*Project, error) + // Add or remove tags from an asset + TagAssets(context.Context, *TagAssetsRequest) (*TagAssetsResponse, error) + UntagAssets(context.Context, *UntagAssetsRequest) (*UntagAssetsResponse, error) + // Query the assets of a project, with additional filtering + QueryAssets(context.Context, *QueryAssetsRequest) (*QueryAssetsResponse, error) + // Delete one or more assets of a project + DeleteAssets(context.Context, *DeleteAssetsRequest) (*DeleteAssetsResponse, error) + mustEmbedUnimplementedProjectServiceServer() +} + +// UnimplementedProjectServiceServer must be embedded to have forward compatible implementations. +type UnimplementedProjectServiceServer struct { +} + +func (UnimplementedProjectServiceServer) Create(context.Context, *CreateProjectRequest) (*Project, error) { + return nil, status.Errorf(codes.Unimplemented, "method Create not implemented") +} +func (UnimplementedProjectServiceServer) Update(context.Context, *UpdateProjectRequest) (*Project, error) { + return nil, status.Errorf(codes.Unimplemented, "method Update not implemented") +} +func (UnimplementedProjectServiceServer) List(*ListProjectRequest, ProjectService_ListServer) error { + return status.Errorf(codes.Unimplemented, "method List not implemented") +} +func (UnimplementedProjectServiceServer) Get(context.Context, *GetProjectRequest) (*Project, error) { + return nil, status.Errorf(codes.Unimplemented, "method Get not implemented") +} +func (UnimplementedProjectServiceServer) Delete(context.Context, *DeleteProjectRequest) (*Project, error) { + return nil, status.Errorf(codes.Unimplemented, "method Delete not implemented") +} +func (UnimplementedProjectServiceServer) TagAssets(context.Context, *TagAssetsRequest) (*TagAssetsResponse, error) { + return nil, status.Errorf(codes.Unimplemented, "method TagAssets not implemented") +} +func (UnimplementedProjectServiceServer) UntagAssets(context.Context, *UntagAssetsRequest) (*UntagAssetsResponse, error) { + return nil, status.Errorf(codes.Unimplemented, "method UntagAssets not implemented") +} +func (UnimplementedProjectServiceServer) QueryAssets(context.Context, *QueryAssetsRequest) (*QueryAssetsResponse, error) { + return nil, status.Errorf(codes.Unimplemented, "method QueryAssets not implemented") +} +func (UnimplementedProjectServiceServer) DeleteAssets(context.Context, *DeleteAssetsRequest) (*DeleteAssetsResponse, error) { + return nil, status.Errorf(codes.Unimplemented, "method DeleteAssets not implemented") +} +func (UnimplementedProjectServiceServer) mustEmbedUnimplementedProjectServiceServer() {} + +// UnsafeProjectServiceServer may be embedded to opt out of forward compatibility for this service. +// Use of this interface is not recommended, as added methods to ProjectServiceServer will +// result in compilation errors. +type UnsafeProjectServiceServer interface { + mustEmbedUnimplementedProjectServiceServer() +} + +func RegisterProjectServiceServer(s grpc.ServiceRegistrar, srv ProjectServiceServer) { + s.RegisterService(&ProjectService_ServiceDesc, srv) +} + +func _ProjectService_Create_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) { + in := new(CreateProjectRequest) + if err := dec(in); err != nil { + return nil, err + } + if interceptor == nil { + return srv.(ProjectServiceServer).Create(ctx, in) + } + info := &grpc.UnaryServerInfo{ + Server: srv, + FullMethod: ProjectService_Create_FullMethodName, + } + handler := func(ctx context.Context, req interface{}) (interface{}, error) { + return srv.(ProjectServiceServer).Create(ctx, req.(*CreateProjectRequest)) + } + return interceptor(ctx, in, info, handler) +} + +func _ProjectService_Update_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) { + in := new(UpdateProjectRequest) + if err := dec(in); err != nil { + return nil, err + } + if interceptor == nil { + return srv.(ProjectServiceServer).Update(ctx, in) + } + info := &grpc.UnaryServerInfo{ + Server: srv, + FullMethod: ProjectService_Update_FullMethodName, + } + handler := func(ctx context.Context, req interface{}) (interface{}, error) { + return srv.(ProjectServiceServer).Update(ctx, req.(*UpdateProjectRequest)) + } + return interceptor(ctx, in, info, handler) +} + +func _ProjectService_List_Handler(srv interface{}, stream grpc.ServerStream) error { + m := new(ListProjectRequest) + if err := stream.RecvMsg(m); err != nil { + return err + } + return srv.(ProjectServiceServer).List(m, &projectServiceListServer{stream}) +} + +type ProjectService_ListServer interface { + Send(*Project) error + grpc.ServerStream +} + +type projectServiceListServer struct { + grpc.ServerStream +} + +func (x *projectServiceListServer) Send(m *Project) error { + return x.ServerStream.SendMsg(m) +} + +func _ProjectService_Get_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) { + in := new(GetProjectRequest) + if err := dec(in); err != nil { + return nil, err + } + if interceptor == nil { + return srv.(ProjectServiceServer).Get(ctx, in) + } + info := &grpc.UnaryServerInfo{ + Server: srv, + FullMethod: ProjectService_Get_FullMethodName, + } + handler := func(ctx context.Context, req interface{}) (interface{}, error) { + return srv.(ProjectServiceServer).Get(ctx, req.(*GetProjectRequest)) + } + return interceptor(ctx, in, info, handler) +} + +func _ProjectService_Delete_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) { + in := new(DeleteProjectRequest) + if err := dec(in); err != nil { + return nil, err + } + if interceptor == nil { + return srv.(ProjectServiceServer).Delete(ctx, in) + } + info := &grpc.UnaryServerInfo{ + Server: srv, + FullMethod: ProjectService_Delete_FullMethodName, + } + handler := func(ctx context.Context, req interface{}) (interface{}, error) { + return srv.(ProjectServiceServer).Delete(ctx, req.(*DeleteProjectRequest)) + } + return interceptor(ctx, in, info, handler) +} + +func _ProjectService_TagAssets_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) { + in := new(TagAssetsRequest) + if err := dec(in); err != nil { + return nil, err + } + if interceptor == nil { + return srv.(ProjectServiceServer).TagAssets(ctx, in) + } + info := &grpc.UnaryServerInfo{ + Server: srv, + FullMethod: ProjectService_TagAssets_FullMethodName, + } + handler := func(ctx context.Context, req interface{}) (interface{}, error) { + return srv.(ProjectServiceServer).TagAssets(ctx, req.(*TagAssetsRequest)) + } + return interceptor(ctx, in, info, handler) +} + +func _ProjectService_UntagAssets_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) { + in := new(UntagAssetsRequest) + if err := dec(in); err != nil { + return nil, err + } + if interceptor == nil { + return srv.(ProjectServiceServer).UntagAssets(ctx, in) + } + info := &grpc.UnaryServerInfo{ + Server: srv, + FullMethod: ProjectService_UntagAssets_FullMethodName, + } + handler := func(ctx context.Context, req interface{}) (interface{}, error) { + return srv.(ProjectServiceServer).UntagAssets(ctx, req.(*UntagAssetsRequest)) + } + return interceptor(ctx, in, info, handler) +} + +func _ProjectService_QueryAssets_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) { + in := new(QueryAssetsRequest) + if err := dec(in); err != nil { + return nil, err + } + if interceptor == nil { + return srv.(ProjectServiceServer).QueryAssets(ctx, in) + } + info := &grpc.UnaryServerInfo{ + Server: srv, + FullMethod: ProjectService_QueryAssets_FullMethodName, + } + handler := func(ctx context.Context, req interface{}) (interface{}, error) { + return srv.(ProjectServiceServer).QueryAssets(ctx, req.(*QueryAssetsRequest)) + } + return interceptor(ctx, in, info, handler) +} + +func _ProjectService_DeleteAssets_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) { + in := new(DeleteAssetsRequest) + if err := dec(in); err != nil { + return nil, err + } + if interceptor == nil { + return srv.(ProjectServiceServer).DeleteAssets(ctx, in) + } + info := &grpc.UnaryServerInfo{ + Server: srv, + FullMethod: ProjectService_DeleteAssets_FullMethodName, + } + handler := func(ctx context.Context, req interface{}) (interface{}, error) { + return srv.(ProjectServiceServer).DeleteAssets(ctx, req.(*DeleteAssetsRequest)) + } + return interceptor(ctx, in, info, handler) +} + +// ProjectService_ServiceDesc is the grpc.ServiceDesc for ProjectService service. +// It's only intended for direct use with grpc.RegisterService, +// and not to be introspected or modified (even as a copy) +var ProjectService_ServiceDesc = grpc.ServiceDesc{ + ServiceName: "stabilityai.platformapis.project.v1.ProjectService", + HandlerType: (*ProjectServiceServer)(nil), + Methods: []grpc.MethodDesc{ + { + MethodName: "Create", + Handler: _ProjectService_Create_Handler, + }, + { + MethodName: "Update", + Handler: _ProjectService_Update_Handler, + }, + { + MethodName: "Get", + Handler: _ProjectService_Get_Handler, + }, + { + MethodName: "Delete", + Handler: _ProjectService_Delete_Handler, + }, + { + MethodName: "TagAssets", + Handler: _ProjectService_TagAssets_Handler, + }, + { + MethodName: "UntagAssets", + Handler: _ProjectService_UntagAssets_Handler, + }, + { + MethodName: "QueryAssets", + Handler: _ProjectService_QueryAssets_Handler, + }, + { + MethodName: "DeleteAssets", + Handler: _ProjectService_DeleteAssets_Handler, + }, + }, + Streams: []grpc.StreamDesc{ + { + StreamName: "List", + Handler: _ProjectService_List_Handler, + ServerStreams: true, + }, + }, + Metadata: "stability_api/platform/project/v1/project.proto", +} diff --git a/src/stability_api/platform/project/v1/project_pb.d.ts b/src/stability_api/platform/project/v1/project_pb.d.ts new file mode 100644 index 0000000..0ea5617 --- /dev/null +++ b/src/stability_api/platform/project/v1/project_pb.d.ts @@ -0,0 +1,909 @@ +// @generated by protoc-gen-es v1.3.0 +// @generated from file stability_api/platform/project/v1/project.proto (package stabilityai.platformapis.project.v1, syntax proto3) +/* eslint-disable */ +// @ts-nocheck + +import type { BinaryReadOptions, FieldList, JsonReadOptions, JsonValue, PartialMessage, PlainMessage } from "@bufbuild/protobuf"; +import { Message, proto3 } from "@bufbuild/protobuf"; +import type { Request } from "../../generation/v1/generation_pb.js"; + +/** + * @generated from enum stabilityai.platformapis.project.v1.ProjectAccess + */ +export declare enum ProjectAccess { + /** + * Private access, only owner organization can access + * + * @generated from enum value: PROJECT_ACCESS_PRIVATE = 0; + */ + PRIVATE = 0, + + /** + * Public access, anyone can access + * + * @generated from enum value: PROJECT_ACCESS_PUBLIC = 1; + */ + PUBLIC = 1, +} + +/** + * @generated from enum stabilityai.platformapis.project.v1.ProjectStatus + */ +export declare enum ProjectStatus { + /** + * Inactive project + * + * @generated from enum value: PROJECT_STATUS_INACTIVE = 0; + */ + INACTIVE = 0, + + /** + * Active project + * + * @generated from enum value: PROJECT_STATUS_ACTIVE = 1; + */ + ACTIVE = 1, + + /** + * Deleted project, only set by delete endpoint + * + * @generated from enum value: PROJECT_STATUS_DELETED = 2; + */ + DELETED = 2, +} + +/** + * @generated from enum stabilityai.platformapis.project.v1.ProjectAssetUse + */ +export declare enum ProjectAssetUse { + /** + * Asset does not have use defined + * + * @generated from enum value: PROJECT_ASSET_USE_UNDEFINED = 0; + */ + UNDEFINED = 0, + + /** + * Asset is used as an input for the project + * + * @generated from enum value: PROJECT_ASSET_USE_INPUT = 1; + */ + INPUT = 1, + + /** + * Asset is an output from the project + * + * @generated from enum value: PROJECT_ASSET_USE_OUTPUT = 2; + */ + OUTPUT = 2, + + /** + * Asset is an output from an intermediate step of the project + * + * @generated from enum value: PROJECT_ASSET_USE_INTERMEDIATE = 3; + */ + INTERMEDIATE = 3, + + /** + * Asset is used as the project file for the project + * + * @generated from enum value: PROJECT_ASSET_USE_PROJECT = 4; + */ + PROJECT = 4, +} + +/** + * @generated from enum stabilityai.platformapis.project.v1.ProjectSortDir + */ +export declare enum ProjectSortDir { + /** + * Sort direction is not specified, uses default + * + * @generated from enum value: PROJECT_SORT_DIR_UNSPECIFIED = 0; + */ + UNSPECIFIED = 0, + + /** + * Sort in ascending order + * + * @generated from enum value: PROJECT_SORT_DIR_ASC = 1; + */ + ASC = 1, + + /** + * Sort in descending order + * + * @generated from enum value: PROJECT_SORT_DIR_DESC = 2; + */ + DESC = 2, +} + +/** + * The Type of Project being created + * + * @generated from enum stabilityai.platformapis.project.v1.ProjectType + */ +export declare enum ProjectType { + /** + * Zero-value, unspecified + * + * @generated from enum value: PROJECT_TYPE_UNSPECIFIED = 0; + */ + UNSPECIFIED = 0, + + /** + * Training project, used for Fine-Tuning models + * + * @generated from enum value: PROJECT_TYPE_TRAINING = 1; + */ + TRAINING = 1, +} + +/** + * @generated from message stabilityai.platformapis.project.v1.ProjectAsset + */ +export declare class ProjectAsset extends Message { + /** + * ID of the asset, UUIDv4 + * + * @generated from field: string id = 1; + */ + id: string; + + /** + * The URI to the asset + * + * @generated from field: string uri = 2; + */ + uri: string; + + /** + * The use of the asset with respect to the project + * + * @generated from field: stabilityai.platformapis.project.v1.ProjectAssetUse use = 3; + */ + use: ProjectAssetUse; + + /** + * The name of the asset + * + * @generated from field: string name = 4; + */ + name: string; + + /** + * The asset size in bytes + * + * @generated from field: uint64 size = 5; + */ + size: bigint; + + /** + * Time of asset creation (UTC seconds epoch) + * + * @generated from field: uint64 created_at = 6; + */ + createdAt: bigint; + + /** + * Time of last asset update (UTC seconds epoch) + * + * @generated from field: uint64 updated_at = 7; + */ + updatedAt: bigint; + + /** + * The request object that is associated with the artifact + * + * @generated from field: stabilityai.platformapis.generation.v1.Request request = 8; + */ + request?: Request; + + /** + * The tags associated with the asset + * + * @generated from field: map tags = 9; + */ + tags: { [key: string]: string }; + + constructor(data?: PartialMessage); + + static readonly runtime: typeof proto3; + static readonly typeName = "stabilityai.platformapis.project.v1.ProjectAsset"; + static readonly fields: FieldList; + + static fromBinary(bytes: Uint8Array, options?: Partial): ProjectAsset; + + static fromJson(jsonValue: JsonValue, options?: Partial): ProjectAsset; + + static fromJsonString(jsonString: string, options?: Partial): ProjectAsset; + + static equals(a: ProjectAsset | PlainMessage | undefined, b: ProjectAsset | PlainMessage | undefined): boolean; +} + +/** + * @generated from message stabilityai.platformapis.project.v1.Project + */ +export declare class Project extends Message { + /** + * ID of the project, UUIDv4 + * + * @generated from field: string id = 1; + */ + id: string; + + /** + * Title of the project + * + * @generated from field: string title = 2; + */ + title: string; + + /** + * The ID of the organization owning the project + * + * @generated from field: string owner_id = 3; + */ + ownerId: string; + + /** + * The access of the project (such as public vs private) + * + * @generated from field: stabilityai.platformapis.project.v1.ProjectAccess access = 4; + */ + access: ProjectAccess; + + /** + * The status of the project (such as active vs inactive) + * + * @generated from field: stabilityai.platformapis.project.v1.ProjectStatus status = 5; + */ + status: ProjectStatus; + + /** + * The size of the project in bytes + * + * @generated from field: uint64 size = 6; + */ + size: bigint; + + /** + * Project file for the project + * + * @generated from field: stabilityai.platformapis.project.v1.ProjectAsset file = 7; + */ + file?: ProjectAsset; + + /** + * Time of project creation (UTC seconds epoch) + * + * @generated from field: uint64 created_at = 8; + */ + createdAt: bigint; + + /** + * Time of last project update (UTC seconds epoch) + * + * @generated from field: uint64 updated_at = 9; + */ + updatedAt: bigint; + + /** + * The listing of all assets associated with the project + * + * @generated from field: repeated stabilityai.platformapis.project.v1.ProjectAsset assets = 10; + */ + assets: ProjectAsset[]; + + /** + * The type of project + * + * @generated from field: stabilityai.platformapis.project.v1.ProjectType type = 11; + */ + type: ProjectType; + + constructor(data?: PartialMessage); + + static readonly runtime: typeof proto3; + static readonly typeName = "stabilityai.platformapis.project.v1.Project"; + static readonly fields: FieldList; + + static fromBinary(bytes: Uint8Array, options?: Partial): Project; + + static fromJson(jsonValue: JsonValue, options?: Partial): Project; + + static fromJsonString(jsonString: string, options?: Partial): Project; + + static equals(a: Project | PlainMessage | undefined, b: Project | PlainMessage | undefined): boolean; +} + +/** + * @generated from message stabilityai.platformapis.project.v1.CreateProjectRequest + */ +export declare class CreateProjectRequest extends Message { + /** + * title of the project + * + * @generated from field: string title = 1; + */ + title: string; + + /** + * The ID of the organization owning the project, empty for default org for user + * + * @generated from field: optional string owner_id = 2; + */ + ownerId?: string; + + /** + * The access of the project (such as public vs private) + * + * @generated from field: stabilityai.platformapis.project.v1.ProjectAccess access = 3; + */ + access: ProjectAccess; + + /** + * The status of the project (such as active vs inactive) + * + * @generated from field: stabilityai.platformapis.project.v1.ProjectStatus status = 4; + */ + status: ProjectStatus; + + /** + * Project file for the project (if existing, else will create) + * + * @generated from field: optional stabilityai.platformapis.project.v1.ProjectAsset file = 5; + */ + file?: ProjectAsset; + + /** + * The type of project + * + * @generated from field: stabilityai.platformapis.project.v1.ProjectType type = 6; + */ + type: ProjectType; + + constructor(data?: PartialMessage); + + static readonly runtime: typeof proto3; + static readonly typeName = "stabilityai.platformapis.project.v1.CreateProjectRequest"; + static readonly fields: FieldList; + + static fromBinary(bytes: Uint8Array, options?: Partial): CreateProjectRequest; + + static fromJson(jsonValue: JsonValue, options?: Partial): CreateProjectRequest; + + static fromJsonString(jsonString: string, options?: Partial): CreateProjectRequest; + + static equals(a: CreateProjectRequest | PlainMessage | undefined, b: CreateProjectRequest | PlainMessage | undefined): boolean; +} + +/** + * @generated from message stabilityai.platformapis.project.v1.UpdateProjectRequest + */ +export declare class UpdateProjectRequest extends Message { + /** + * ID of the project, UUIDv4 + * + * @generated from field: string id = 1; + */ + id: string; + + /** + * The ID of the organization owning the project, empty for default org for user + * + * @generated from field: optional string owner_id = 2; + */ + ownerId?: string; + + /** + * Title of the project + * + * @generated from field: optional string title = 3; + */ + title?: string; + + /** + * The access of the project (such as public vs private) + * + * @generated from field: optional stabilityai.platformapis.project.v1.ProjectAccess access = 4; + */ + access?: ProjectAccess; + + /** + * The status of the project (such as active vs inactive) + * + * @generated from field: optional stabilityai.platformapis.project.v1.ProjectStatus status = 5; + */ + status?: ProjectStatus; + + /** + * Project file for the project + * + * @generated from field: optional stabilityai.platformapis.project.v1.ProjectAsset file = 6; + */ + file?: ProjectAsset; + + /** + * The type of project + * + * @generated from field: optional stabilityai.platformapis.project.v1.ProjectType type = 7; + */ + type?: ProjectType; + + constructor(data?: PartialMessage); + + static readonly runtime: typeof proto3; + static readonly typeName = "stabilityai.platformapis.project.v1.UpdateProjectRequest"; + static readonly fields: FieldList; + + static fromBinary(bytes: Uint8Array, options?: Partial): UpdateProjectRequest; + + static fromJson(jsonValue: JsonValue, options?: Partial): UpdateProjectRequest; + + static fromJsonString(jsonString: string, options?: Partial): UpdateProjectRequest; + + static equals(a: UpdateProjectRequest | PlainMessage | undefined, b: UpdateProjectRequest | PlainMessage | undefined): boolean; +} + +/** + * @generated from message stabilityai.platformapis.project.v1.ListProjectRequest + */ +export declare class ListProjectRequest extends Message { + /** + * The ID of the organization owning the project, empty for default org for user + * + * @generated from field: optional string owner_id = 1; + */ + ownerId?: string; + + constructor(data?: PartialMessage); + + static readonly runtime: typeof proto3; + static readonly typeName = "stabilityai.platformapis.project.v1.ListProjectRequest"; + static readonly fields: FieldList; + + static fromBinary(bytes: Uint8Array, options?: Partial): ListProjectRequest; + + static fromJson(jsonValue: JsonValue, options?: Partial): ListProjectRequest; + + static fromJsonString(jsonString: string, options?: Partial): ListProjectRequest; + + static equals(a: ListProjectRequest | PlainMessage | undefined, b: ListProjectRequest | PlainMessage | undefined): boolean; +} + +/** + * @generated from message stabilityai.platformapis.project.v1.GetProjectRequest + */ +export declare class GetProjectRequest extends Message { + /** + * ID of the project to request, UUIDv4, empty string uses default project + * + * @generated from field: string id = 1; + */ + id: string; + + /** + * The ID of the organization owning the project, empty for default org for user + * + * @generated from field: optional string owner_id = 2; + */ + ownerId?: string; + + constructor(data?: PartialMessage); + + static readonly runtime: typeof proto3; + static readonly typeName = "stabilityai.platformapis.project.v1.GetProjectRequest"; + static readonly fields: FieldList; + + static fromBinary(bytes: Uint8Array, options?: Partial): GetProjectRequest; + + static fromJson(jsonValue: JsonValue, options?: Partial): GetProjectRequest; + + static fromJsonString(jsonString: string, options?: Partial): GetProjectRequest; + + static equals(a: GetProjectRequest | PlainMessage | undefined, b: GetProjectRequest | PlainMessage | undefined): boolean; +} + +/** + * @generated from message stabilityai.platformapis.project.v1.DeleteProjectRequest + */ +export declare class DeleteProjectRequest extends Message { + /** + * ID of the project to request, UUIDv4 + * + * @generated from field: string id = 1; + */ + id: string; + + /** + * The ID of the organization owning the project, empty for default org for user + * + * @generated from field: optional string owner_id = 2; + */ + ownerId?: string; + + constructor(data?: PartialMessage); + + static readonly runtime: typeof proto3; + static readonly typeName = "stabilityai.platformapis.project.v1.DeleteProjectRequest"; + static readonly fields: FieldList; + + static fromBinary(bytes: Uint8Array, options?: Partial): DeleteProjectRequest; + + static fromJson(jsonValue: JsonValue, options?: Partial): DeleteProjectRequest; + + static fromJsonString(jsonString: string, options?: Partial): DeleteProjectRequest; + + static equals(a: DeleteProjectRequest | PlainMessage | undefined, b: DeleteProjectRequest | PlainMessage | undefined): boolean; +} + +/** + * @generated from message stabilityai.platformapis.project.v1.QueryAssetsRequest + */ +export declare class QueryAssetsRequest extends Message { + /** + * ID of the project to request, UUIDv4, empty string uses default project + * + * @generated from field: string id = 1; + */ + id: string; + + /** + * The ID of the organization owning the assets, unset for default org for user + * + * @generated from field: optional string owner_id = 2; + */ + ownerId?: string; + + /** + * The time (UTC seconds epoch) to start listing assets from, unset for no restriction + * + * @generated from field: optional uint64 since = 3; + */ + since?: bigint; + + /** + * The time (UTC seconds epoch) to stop listing assets at, unset for no restriction + * + * @generated from field: optional uint64 until = 4; + */ + until?: bigint; + + /** + * The maximum number of assets to return, unset for no limit + * + * @generated from field: optional uint64 limit = 5; + */ + limit?: bigint; + + /** + * The key to start from, used to paginate results, unset for no offset + * + * @generated from field: optional string start_key = 6; + */ + startKey?: string; + + /** + * The asset usage to filter the assets returned, empty for no filter + * + * @generated from field: repeated stabilityai.platformapis.project.v1.ProjectAssetUse use = 7; + */ + use: ProjectAssetUse[]; + + /** + * The sort direction based on asset creation time, default is descending + * + * @generated from field: stabilityai.platformapis.project.v1.ProjectSortDir sort_dir = 8; + */ + sortDir: ProjectSortDir; + + /** + * The tag values used to filter the assets returned, empty for no filter + * + * @generated from field: map tags = 9; + */ + tags: { [key: string]: string }; + + constructor(data?: PartialMessage); + + static readonly runtime: typeof proto3; + static readonly typeName = "stabilityai.platformapis.project.v1.QueryAssetsRequest"; + static readonly fields: FieldList; + + static fromBinary(bytes: Uint8Array, options?: Partial): QueryAssetsRequest; + + static fromJson(jsonValue: JsonValue, options?: Partial): QueryAssetsRequest; + + static fromJsonString(jsonString: string, options?: Partial): QueryAssetsRequest; + + static equals(a: QueryAssetsRequest | PlainMessage | undefined, b: QueryAssetsRequest | PlainMessage | undefined): boolean; +} + +/** + * @generated from message stabilityai.platformapis.project.v1.QueryAssetsResponse + */ +export declare class QueryAssetsResponse extends Message { + /** + * The assets returned by the query + * + * @generated from field: repeated stabilityai.platformapis.project.v1.ProjectAsset assets = 1; + */ + assets: ProjectAsset[]; + + /** + * The last asset key returned when the results were limited, unset when not limited + * + * @generated from field: optional string last_key = 2; + */ + lastKey?: string; + + constructor(data?: PartialMessage); + + static readonly runtime: typeof proto3; + static readonly typeName = "stabilityai.platformapis.project.v1.QueryAssetsResponse"; + static readonly fields: FieldList; + + static fromBinary(bytes: Uint8Array, options?: Partial): QueryAssetsResponse; + + static fromJson(jsonValue: JsonValue, options?: Partial): QueryAssetsResponse; + + static fromJsonString(jsonString: string, options?: Partial): QueryAssetsResponse; + + static equals(a: QueryAssetsResponse | PlainMessage | undefined, b: QueryAssetsResponse | PlainMessage | undefined): boolean; +} + +/** + * @generated from message stabilityai.platformapis.project.v1.TagAssetsRequest + */ +export declare class TagAssetsRequest extends Message { + /** + * ID of the project to request, UUIDv4, empty string uses default project + * + * @generated from field: string id = 1; + */ + id: string; + + /** + * The ID of the organization owning the assets, unset for default org for user + * + * @generated from field: optional string owner_id = 2; + */ + ownerId?: string; + + /** + * The IDs of the assets to tag in the project, UUIDv4, limit 1000 + * + * @generated from field: repeated string asset_ids = 3; + */ + assetIds: string[]; + + /** + * The tags to add to the assets + * + * @generated from field: map tags = 4; + */ + tags: { [key: string]: string }; + + constructor(data?: PartialMessage); + + static readonly runtime: typeof proto3; + static readonly typeName = "stabilityai.platformapis.project.v1.TagAssetsRequest"; + static readonly fields: FieldList; + + static fromBinary(bytes: Uint8Array, options?: Partial): TagAssetsRequest; + + static fromJson(jsonValue: JsonValue, options?: Partial): TagAssetsRequest; + + static fromJsonString(jsonString: string, options?: Partial): TagAssetsRequest; + + static equals(a: TagAssetsRequest | PlainMessage | undefined, b: TagAssetsRequest | PlainMessage | undefined): boolean; +} + +/** + * @generated from message stabilityai.platformapis.project.v1.TagAssetsResponse + */ +export declare class TagAssetsResponse extends Message { + /** + * ID of the project, UUIDv4 + * + * @generated from field: string id = 1; + */ + id: string; + + /** + * The ID of the organization owning the project + * + * @generated from field: string owner_id = 2; + */ + ownerId: string; + + /** + * The IDs of the assets updated in the project, UUIDv4, limit 1000 + * + * @generated from field: repeated string asset_ids = 3; + */ + assetIds: string[]; + + constructor(data?: PartialMessage); + + static readonly runtime: typeof proto3; + static readonly typeName = "stabilityai.platformapis.project.v1.TagAssetsResponse"; + static readonly fields: FieldList; + + static fromBinary(bytes: Uint8Array, options?: Partial): TagAssetsResponse; + + static fromJson(jsonValue: JsonValue, options?: Partial): TagAssetsResponse; + + static fromJsonString(jsonString: string, options?: Partial): TagAssetsResponse; + + static equals(a: TagAssetsResponse | PlainMessage | undefined, b: TagAssetsResponse | PlainMessage | undefined): boolean; +} + +/** + * @generated from message stabilityai.platformapis.project.v1.UntagAssetsRequest + */ +export declare class UntagAssetsRequest extends Message { + /** + * ID of the project to request, UUIDv4, empty string uses default project + * + * @generated from field: string id = 1; + */ + id: string; + + /** + * The ID of the organization owning the assets, unset for default org for user + * + * @generated from field: optional string owner_id = 2; + */ + ownerId?: string; + + /** + * The IDs of the assets to tag in the project, UUIDv4, limit 1000 + * + * @generated from field: repeated string asset_ids = 3; + */ + assetIds: string[]; + + /** + * The keys of the tags to remove from the assets + * + * @generated from field: repeated string tag_keys = 4; + */ + tagKeys: string[]; + + constructor(data?: PartialMessage); + + static readonly runtime: typeof proto3; + static readonly typeName = "stabilityai.platformapis.project.v1.UntagAssetsRequest"; + static readonly fields: FieldList; + + static fromBinary(bytes: Uint8Array, options?: Partial): UntagAssetsRequest; + + static fromJson(jsonValue: JsonValue, options?: Partial): UntagAssetsRequest; + + static fromJsonString(jsonString: string, options?: Partial): UntagAssetsRequest; + + static equals(a: UntagAssetsRequest | PlainMessage | undefined, b: UntagAssetsRequest | PlainMessage | undefined): boolean; +} + +/** + * @generated from message stabilityai.platformapis.project.v1.UntagAssetsResponse + */ +export declare class UntagAssetsResponse extends Message { + /** + * ID of the project, UUIDv4 + * + * @generated from field: string id = 1; + */ + id: string; + + /** + * The ID of the organization owning the project + * + * @generated from field: string owner_id = 2; + */ + ownerId: string; + + /** + * The IDs of the assets updated in the project, UUIDv4, limit 1000 + * + * @generated from field: repeated string asset_ids = 3; + */ + assetIds: string[]; + + constructor(data?: PartialMessage); + + static readonly runtime: typeof proto3; + static readonly typeName = "stabilityai.platformapis.project.v1.UntagAssetsResponse"; + static readonly fields: FieldList; + + static fromBinary(bytes: Uint8Array, options?: Partial): UntagAssetsResponse; + + static fromJson(jsonValue: JsonValue, options?: Partial): UntagAssetsResponse; + + static fromJsonString(jsonString: string, options?: Partial): UntagAssetsResponse; + + static equals(a: UntagAssetsResponse | PlainMessage | undefined, b: UntagAssetsResponse | PlainMessage | undefined): boolean; +} + +/** + * @generated from message stabilityai.platformapis.project.v1.DeleteAssetsRequest + */ +export declare class DeleteAssetsRequest extends Message { + /** + * ID of the project to request, UUIDv4, empty string uses default project + * + * @generated from field: string id = 1; + */ + id: string; + + /** + * The ID of the organization owning the project, unset for default org for user + * + * @generated from field: optional string owner_id = 2; + */ + ownerId?: string; + + /** + * The IDs of the assets to delete from the project, UUIDv4, limit 1000 + * + * @generated from field: repeated string asset_ids = 3; + */ + assetIds: string[]; + + constructor(data?: PartialMessage); + + static readonly runtime: typeof proto3; + static readonly typeName = "stabilityai.platformapis.project.v1.DeleteAssetsRequest"; + static readonly fields: FieldList; + + static fromBinary(bytes: Uint8Array, options?: Partial): DeleteAssetsRequest; + + static fromJson(jsonValue: JsonValue, options?: Partial): DeleteAssetsRequest; + + static fromJsonString(jsonString: string, options?: Partial): DeleteAssetsRequest; + + static equals(a: DeleteAssetsRequest | PlainMessage | undefined, b: DeleteAssetsRequest | PlainMessage | undefined): boolean; +} + +/** + * @generated from message stabilityai.platformapis.project.v1.DeleteAssetsResponse + */ +export declare class DeleteAssetsResponse extends Message { + /** + * ID of the project, UUIDv4 + * + * @generated from field: string id = 1; + */ + id: string; + + /** + * The ID of the organization owning the project + * + * @generated from field: string owner_id = 2; + */ + ownerId: string; + + /** + * The IDs of the assets deleted from the project, UUIDv4, limit 1000 + * + * @generated from field: repeated string asset_ids = 3; + */ + assetIds: string[]; + + constructor(data?: PartialMessage); + + static readonly runtime: typeof proto3; + static readonly typeName = "stabilityai.platformapis.project.v1.DeleteAssetsResponse"; + static readonly fields: FieldList; + + static fromBinary(bytes: Uint8Array, options?: Partial): DeleteAssetsResponse; + + static fromJson(jsonValue: JsonValue, options?: Partial): DeleteAssetsResponse; + + static fromJsonString(jsonString: string, options?: Partial): DeleteAssetsResponse; + + static equals(a: DeleteAssetsResponse | PlainMessage | undefined, b: DeleteAssetsResponse | PlainMessage | undefined): boolean; +} + diff --git a/src/stability_api/platform/project/v1/project_pb.js b/src/stability_api/platform/project/v1/project_pb.js new file mode 100644 index 0000000..3b1d68c --- /dev/null +++ b/src/stability_api/platform/project/v1/project_pb.js @@ -0,0 +1,274 @@ +// @generated by protoc-gen-es v1.3.0 +// @generated from file stability_api/platform/project/v1/project.proto (package stabilityai.platformapis.project.v1, syntax proto3) +/* eslint-disable */ +// @ts-nocheck + +import { proto3 } from "@bufbuild/protobuf"; +import { Request } from "../../generation/v1/generation_pb.js"; + +/** + * @generated from enum stabilityai.platformapis.project.v1.ProjectAccess + */ +export const ProjectAccess = proto3.makeEnum( + "stabilityai.platformapis.project.v1.ProjectAccess", + [ + {no: 0, name: "PROJECT_ACCESS_PRIVATE", localName: "PRIVATE"}, + {no: 1, name: "PROJECT_ACCESS_PUBLIC", localName: "PUBLIC"}, + ], +); + +/** + * @generated from enum stabilityai.platformapis.project.v1.ProjectStatus + */ +export const ProjectStatus = proto3.makeEnum( + "stabilityai.platformapis.project.v1.ProjectStatus", + [ + {no: 0, name: "PROJECT_STATUS_INACTIVE", localName: "INACTIVE"}, + {no: 1, name: "PROJECT_STATUS_ACTIVE", localName: "ACTIVE"}, + {no: 2, name: "PROJECT_STATUS_DELETED", localName: "DELETED"}, + ], +); + +/** + * @generated from enum stabilityai.platformapis.project.v1.ProjectAssetUse + */ +export const ProjectAssetUse = proto3.makeEnum( + "stabilityai.platformapis.project.v1.ProjectAssetUse", + [ + {no: 0, name: "PROJECT_ASSET_USE_UNDEFINED", localName: "UNDEFINED"}, + {no: 1, name: "PROJECT_ASSET_USE_INPUT", localName: "INPUT"}, + {no: 2, name: "PROJECT_ASSET_USE_OUTPUT", localName: "OUTPUT"}, + {no: 3, name: "PROJECT_ASSET_USE_INTERMEDIATE", localName: "INTERMEDIATE"}, + {no: 4, name: "PROJECT_ASSET_USE_PROJECT", localName: "PROJECT"}, + ], +); + +/** + * @generated from enum stabilityai.platformapis.project.v1.ProjectSortDir + */ +export const ProjectSortDir = proto3.makeEnum( + "stabilityai.platformapis.project.v1.ProjectSortDir", + [ + {no: 0, name: "PROJECT_SORT_DIR_UNSPECIFIED", localName: "UNSPECIFIED"}, + {no: 1, name: "PROJECT_SORT_DIR_ASC", localName: "ASC"}, + {no: 2, name: "PROJECT_SORT_DIR_DESC", localName: "DESC"}, + ], +); + +/** + * The Type of Project being created + * + * @generated from enum stabilityai.platformapis.project.v1.ProjectType + */ +export const ProjectType = proto3.makeEnum( + "stabilityai.platformapis.project.v1.ProjectType", + [ + {no: 0, name: "PROJECT_TYPE_UNSPECIFIED", localName: "UNSPECIFIED"}, + {no: 1, name: "PROJECT_TYPE_TRAINING", localName: "TRAINING"}, + ], +); + +/** + * @generated from message stabilityai.platformapis.project.v1.ProjectAsset + */ +export const ProjectAsset = proto3.makeMessageType( + "stabilityai.platformapis.project.v1.ProjectAsset", + () => [ + { no: 1, name: "id", kind: "scalar", T: 9 /* ScalarType.STRING */ }, + { no: 2, name: "uri", kind: "scalar", T: 9 /* ScalarType.STRING */ }, + { no: 3, name: "use", kind: "enum", T: proto3.getEnumType(ProjectAssetUse) }, + { no: 4, name: "name", kind: "scalar", T: 9 /* ScalarType.STRING */ }, + { no: 5, name: "size", kind: "scalar", T: 4 /* ScalarType.UINT64 */ }, + { no: 6, name: "created_at", kind: "scalar", T: 4 /* ScalarType.UINT64 */ }, + { no: 7, name: "updated_at", kind: "scalar", T: 4 /* ScalarType.UINT64 */ }, + { no: 8, name: "request", kind: "message", T: Request }, + { no: 9, name: "tags", kind: "map", K: 9 /* ScalarType.STRING */, V: {kind: "scalar", T: 9 /* ScalarType.STRING */} }, + ], +); + +/** + * @generated from message stabilityai.platformapis.project.v1.Project + */ +export const Project = proto3.makeMessageType( + "stabilityai.platformapis.project.v1.Project", + () => [ + { no: 1, name: "id", kind: "scalar", T: 9 /* ScalarType.STRING */ }, + { no: 2, name: "title", kind: "scalar", T: 9 /* ScalarType.STRING */ }, + { no: 3, name: "owner_id", kind: "scalar", T: 9 /* ScalarType.STRING */ }, + { no: 4, name: "access", kind: "enum", T: proto3.getEnumType(ProjectAccess) }, + { no: 5, name: "status", kind: "enum", T: proto3.getEnumType(ProjectStatus) }, + { no: 6, name: "size", kind: "scalar", T: 4 /* ScalarType.UINT64 */ }, + { no: 7, name: "file", kind: "message", T: ProjectAsset }, + { no: 8, name: "created_at", kind: "scalar", T: 4 /* ScalarType.UINT64 */ }, + { no: 9, name: "updated_at", kind: "scalar", T: 4 /* ScalarType.UINT64 */ }, + { no: 10, name: "assets", kind: "message", T: ProjectAsset, repeated: true }, + { no: 11, name: "type", kind: "enum", T: proto3.getEnumType(ProjectType) }, + ], +); + +/** + * @generated from message stabilityai.platformapis.project.v1.CreateProjectRequest + */ +export const CreateProjectRequest = proto3.makeMessageType( + "stabilityai.platformapis.project.v1.CreateProjectRequest", + () => [ + { no: 1, name: "title", kind: "scalar", T: 9 /* ScalarType.STRING */ }, + { no: 2, name: "owner_id", kind: "scalar", T: 9 /* ScalarType.STRING */, opt: true }, + { no: 3, name: "access", kind: "enum", T: proto3.getEnumType(ProjectAccess) }, + { no: 4, name: "status", kind: "enum", T: proto3.getEnumType(ProjectStatus) }, + { no: 5, name: "file", kind: "message", T: ProjectAsset, opt: true }, + { no: 6, name: "type", kind: "enum", T: proto3.getEnumType(ProjectType) }, + ], +); + +/** + * @generated from message stabilityai.platformapis.project.v1.UpdateProjectRequest + */ +export const UpdateProjectRequest = proto3.makeMessageType( + "stabilityai.platformapis.project.v1.UpdateProjectRequest", + () => [ + { no: 1, name: "id", kind: "scalar", T: 9 /* ScalarType.STRING */ }, + { no: 2, name: "owner_id", kind: "scalar", T: 9 /* ScalarType.STRING */, opt: true }, + { no: 3, name: "title", kind: "scalar", T: 9 /* ScalarType.STRING */, opt: true }, + { no: 4, name: "access", kind: "enum", T: proto3.getEnumType(ProjectAccess), opt: true }, + { no: 5, name: "status", kind: "enum", T: proto3.getEnumType(ProjectStatus), opt: true }, + { no: 6, name: "file", kind: "message", T: ProjectAsset, opt: true }, + { no: 7, name: "type", kind: "enum", T: proto3.getEnumType(ProjectType), opt: true }, + ], +); + +/** + * @generated from message stabilityai.platformapis.project.v1.ListProjectRequest + */ +export const ListProjectRequest = proto3.makeMessageType( + "stabilityai.platformapis.project.v1.ListProjectRequest", + () => [ + { no: 1, name: "owner_id", kind: "scalar", T: 9 /* ScalarType.STRING */, opt: true }, + ], +); + +/** + * @generated from message stabilityai.platformapis.project.v1.GetProjectRequest + */ +export const GetProjectRequest = proto3.makeMessageType( + "stabilityai.platformapis.project.v1.GetProjectRequest", + () => [ + { no: 1, name: "id", kind: "scalar", T: 9 /* ScalarType.STRING */ }, + { no: 2, name: "owner_id", kind: "scalar", T: 9 /* ScalarType.STRING */, opt: true }, + ], +); + +/** + * @generated from message stabilityai.platformapis.project.v1.DeleteProjectRequest + */ +export const DeleteProjectRequest = proto3.makeMessageType( + "stabilityai.platformapis.project.v1.DeleteProjectRequest", + () => [ + { no: 1, name: "id", kind: "scalar", T: 9 /* ScalarType.STRING */ }, + { no: 2, name: "owner_id", kind: "scalar", T: 9 /* ScalarType.STRING */, opt: true }, + ], +); + +/** + * @generated from message stabilityai.platformapis.project.v1.QueryAssetsRequest + */ +export const QueryAssetsRequest = proto3.makeMessageType( + "stabilityai.platformapis.project.v1.QueryAssetsRequest", + () => [ + { no: 1, name: "id", kind: "scalar", T: 9 /* ScalarType.STRING */ }, + { no: 2, name: "owner_id", kind: "scalar", T: 9 /* ScalarType.STRING */, opt: true }, + { no: 3, name: "since", kind: "scalar", T: 4 /* ScalarType.UINT64 */, opt: true }, + { no: 4, name: "until", kind: "scalar", T: 4 /* ScalarType.UINT64 */, opt: true }, + { no: 5, name: "limit", kind: "scalar", T: 4 /* ScalarType.UINT64 */, opt: true }, + { no: 6, name: "start_key", kind: "scalar", T: 9 /* ScalarType.STRING */, opt: true }, + { no: 7, name: "use", kind: "enum", T: proto3.getEnumType(ProjectAssetUse), repeated: true }, + { no: 8, name: "sort_dir", kind: "enum", T: proto3.getEnumType(ProjectSortDir) }, + { no: 9, name: "tags", kind: "map", K: 9 /* ScalarType.STRING */, V: {kind: "scalar", T: 9 /* ScalarType.STRING */} }, + ], +); + +/** + * @generated from message stabilityai.platformapis.project.v1.QueryAssetsResponse + */ +export const QueryAssetsResponse = proto3.makeMessageType( + "stabilityai.platformapis.project.v1.QueryAssetsResponse", + () => [ + { no: 1, name: "assets", kind: "message", T: ProjectAsset, repeated: true }, + { no: 2, name: "last_key", kind: "scalar", T: 9 /* ScalarType.STRING */, opt: true }, + ], +); + +/** + * @generated from message stabilityai.platformapis.project.v1.TagAssetsRequest + */ +export const TagAssetsRequest = proto3.makeMessageType( + "stabilityai.platformapis.project.v1.TagAssetsRequest", + () => [ + { no: 1, name: "id", kind: "scalar", T: 9 /* ScalarType.STRING */ }, + { no: 2, name: "owner_id", kind: "scalar", T: 9 /* ScalarType.STRING */, opt: true }, + { no: 3, name: "asset_ids", kind: "scalar", T: 9 /* ScalarType.STRING */, repeated: true }, + { no: 4, name: "tags", kind: "map", K: 9 /* ScalarType.STRING */, V: {kind: "scalar", T: 9 /* ScalarType.STRING */} }, + ], +); + +/** + * @generated from message stabilityai.platformapis.project.v1.TagAssetsResponse + */ +export const TagAssetsResponse = proto3.makeMessageType( + "stabilityai.platformapis.project.v1.TagAssetsResponse", + () => [ + { no: 1, name: "id", kind: "scalar", T: 9 /* ScalarType.STRING */ }, + { no: 2, name: "owner_id", kind: "scalar", T: 9 /* ScalarType.STRING */ }, + { no: 3, name: "asset_ids", kind: "scalar", T: 9 /* ScalarType.STRING */, repeated: true }, + ], +); + +/** + * @generated from message stabilityai.platformapis.project.v1.UntagAssetsRequest + */ +export const UntagAssetsRequest = proto3.makeMessageType( + "stabilityai.platformapis.project.v1.UntagAssetsRequest", + () => [ + { no: 1, name: "id", kind: "scalar", T: 9 /* ScalarType.STRING */ }, + { no: 2, name: "owner_id", kind: "scalar", T: 9 /* ScalarType.STRING */, opt: true }, + { no: 3, name: "asset_ids", kind: "scalar", T: 9 /* ScalarType.STRING */, repeated: true }, + { no: 4, name: "tag_keys", kind: "scalar", T: 9 /* ScalarType.STRING */, repeated: true }, + ], +); + +/** + * @generated from message stabilityai.platformapis.project.v1.UntagAssetsResponse + */ +export const UntagAssetsResponse = proto3.makeMessageType( + "stabilityai.platformapis.project.v1.UntagAssetsResponse", + () => [ + { no: 1, name: "id", kind: "scalar", T: 9 /* ScalarType.STRING */ }, + { no: 2, name: "owner_id", kind: "scalar", T: 9 /* ScalarType.STRING */ }, + { no: 3, name: "asset_ids", kind: "scalar", T: 9 /* ScalarType.STRING */, repeated: true }, + ], +); + +/** + * @generated from message stabilityai.platformapis.project.v1.DeleteAssetsRequest + */ +export const DeleteAssetsRequest = proto3.makeMessageType( + "stabilityai.platformapis.project.v1.DeleteAssetsRequest", + () => [ + { no: 1, name: "id", kind: "scalar", T: 9 /* ScalarType.STRING */ }, + { no: 2, name: "owner_id", kind: "scalar", T: 9 /* ScalarType.STRING */, opt: true }, + { no: 3, name: "asset_ids", kind: "scalar", T: 9 /* ScalarType.STRING */, repeated: true }, + ], +); + +/** + * @generated from message stabilityai.platformapis.project.v1.DeleteAssetsResponse + */ +export const DeleteAssetsResponse = proto3.makeMessageType( + "stabilityai.platformapis.project.v1.DeleteAssetsResponse", + () => [ + { no: 1, name: "id", kind: "scalar", T: 9 /* ScalarType.STRING */ }, + { no: 2, name: "owner_id", kind: "scalar", T: 9 /* ScalarType.STRING */ }, + { no: 3, name: "asset_ids", kind: "scalar", T: 9 /* ScalarType.STRING */, repeated: true }, + ], +); + diff --git a/src/stability_api/platform/project/v1/project_pb2.py b/src/stability_api/platform/project/v1/project_pb2.py new file mode 100644 index 0000000..979e82d --- /dev/null +++ b/src/stability_api/platform/project/v1/project_pb2.py @@ -0,0 +1,80 @@ +# -*- coding: utf-8 -*- +# Generated by the protocol buffer compiler. DO NOT EDIT! +# source: stability_api/platform/project/v1/project.proto +"""Generated protocol buffer code.""" +from google.protobuf import descriptor as _descriptor +from google.protobuf import descriptor_pool as _descriptor_pool +from google.protobuf import symbol_database as _symbol_database +from google.protobuf.internal import builder as _builder +# @@protoc_insertion_point(imports) + +_sym_db = _symbol_database.Default() + + +from stability_api.platform.generation.v1 import generation_pb2 as stability__api_dot_platform_dot_generation_dot_v1_dot_generation__pb2 + + +DESCRIPTOR = _descriptor_pool.Default().AddSerializedFile(b'\n/stability_api/platform/project/v1/project.proto\x12#stabilityai.platformapis.project.v1\x1a\x35stability_api/platform/generation/v1/generation.proto\"\xb3\x03\n\x0cProjectAsset\x12\x0e\n\x02id\x18\x01 \x01(\tR\x02id\x12\x10\n\x03uri\x18\x02 \x01(\tR\x03uri\x12\x46\n\x03use\x18\x03 \x01(\x0e\x32\x34.stabilityai.platformapis.project.v1.ProjectAssetUseR\x03use\x12\x12\n\x04name\x18\x04 \x01(\tR\x04name\x12\x12\n\x04size\x18\x05 \x01(\x04R\x04size\x12\x1d\n\ncreated_at\x18\x06 \x01(\x04R\tcreatedAt\x12\x1d\n\nupdated_at\x18\x07 \x01(\x04R\tupdatedAt\x12I\n\x07request\x18\x08 \x01(\x0b\x32/.stabilityai.platformapis.generation.v1.RequestR\x07request\x12O\n\x04tags\x18\t \x03(\x0b\x32;.stabilityai.platformapis.project.v1.ProjectAsset.TagsEntryR\x04tags\x1a\x37\n\tTagsEntry\x12\x10\n\x03key\x18\x01 \x01(\tR\x03key\x12\x14\n\x05value\x18\x02 \x01(\tR\x05value:\x02\x38\x01\"\x8c\x04\n\x07Project\x12\x0e\n\x02id\x18\x01 \x01(\tR\x02id\x12\x14\n\x05title\x18\x02 \x01(\tR\x05title\x12\x19\n\x08owner_id\x18\x03 \x01(\tR\x07ownerId\x12J\n\x06\x61\x63\x63\x65ss\x18\x04 \x01(\x0e\x32\x32.stabilityai.platformapis.project.v1.ProjectAccessR\x06\x61\x63\x63\x65ss\x12J\n\x06status\x18\x05 \x01(\x0e\x32\x32.stabilityai.platformapis.project.v1.ProjectStatusR\x06status\x12\x12\n\x04size\x18\x06 \x01(\x04R\x04size\x12\x45\n\x04\x66ile\x18\x07 \x01(\x0b\x32\x31.stabilityai.platformapis.project.v1.ProjectAssetR\x04\x66ile\x12\x1d\n\ncreated_at\x18\x08 \x01(\x04R\tcreatedAt\x12\x1d\n\nupdated_at\x18\t \x01(\x04R\tupdatedAt\x12I\n\x06\x61ssets\x18\n \x03(\x0b\x32\x31.stabilityai.platformapis.project.v1.ProjectAssetR\x06\x61ssets\x12\x44\n\x04type\x18\x0b \x01(\x0e\x32\x30.stabilityai.platformapis.project.v1.ProjectTypeR\x04type\"\x8c\x03\n\x14\x43reateProjectRequest\x12\x14\n\x05title\x18\x01 \x01(\tR\x05title\x12\x1e\n\x08owner_id\x18\x02 \x01(\tH\x00R\x07ownerId\x88\x01\x01\x12J\n\x06\x61\x63\x63\x65ss\x18\x03 \x01(\x0e\x32\x32.stabilityai.platformapis.project.v1.ProjectAccessR\x06\x61\x63\x63\x65ss\x12J\n\x06status\x18\x04 \x01(\x0e\x32\x32.stabilityai.platformapis.project.v1.ProjectStatusR\x06status\x12J\n\x04\x66ile\x18\x05 \x01(\x0b\x32\x31.stabilityai.platformapis.project.v1.ProjectAssetH\x01R\x04\x66ile\x88\x01\x01\x12\x44\n\x04type\x18\x06 \x01(\x0e\x32\x30.stabilityai.platformapis.project.v1.ProjectTypeR\x04typeB\x0b\n\t_owner_idB\x07\n\x05_file\"\xd9\x03\n\x14UpdateProjectRequest\x12\x0e\n\x02id\x18\x01 \x01(\tR\x02id\x12\x1e\n\x08owner_id\x18\x02 \x01(\tH\x00R\x07ownerId\x88\x01\x01\x12\x19\n\x05title\x18\x03 \x01(\tH\x01R\x05title\x88\x01\x01\x12O\n\x06\x61\x63\x63\x65ss\x18\x04 \x01(\x0e\x32\x32.stabilityai.platformapis.project.v1.ProjectAccessH\x02R\x06\x61\x63\x63\x65ss\x88\x01\x01\x12O\n\x06status\x18\x05 \x01(\x0e\x32\x32.stabilityai.platformapis.project.v1.ProjectStatusH\x03R\x06status\x88\x01\x01\x12J\n\x04\x66ile\x18\x06 \x01(\x0b\x32\x31.stabilityai.platformapis.project.v1.ProjectAssetH\x04R\x04\x66ile\x88\x01\x01\x12I\n\x04type\x18\x07 \x01(\x0e\x32\x30.stabilityai.platformapis.project.v1.ProjectTypeH\x05R\x04type\x88\x01\x01\x42\x0b\n\t_owner_idB\x08\n\x06_titleB\t\n\x07_accessB\t\n\x07_statusB\x07\n\x05_fileB\x07\n\x05_type\"A\n\x12ListProjectRequest\x12\x1e\n\x08owner_id\x18\x01 \x01(\tH\x00R\x07ownerId\x88\x01\x01\x42\x0b\n\t_owner_id\"P\n\x11GetProjectRequest\x12\x0e\n\x02id\x18\x01 \x01(\tR\x02id\x12\x1e\n\x08owner_id\x18\x02 \x01(\tH\x00R\x07ownerId\x88\x01\x01\x42\x0b\n\t_owner_id\"S\n\x14\x44\x65leteProjectRequest\x12\x0e\n\x02id\x18\x01 \x01(\tR\x02id\x12\x1e\n\x08owner_id\x18\x02 \x01(\tH\x00R\x07ownerId\x88\x01\x01\x42\x0b\n\t_owner_id\"\x98\x04\n\x12QueryAssetsRequest\x12\x0e\n\x02id\x18\x01 \x01(\tR\x02id\x12\x1e\n\x08owner_id\x18\x02 \x01(\tH\x00R\x07ownerId\x88\x01\x01\x12\x19\n\x05since\x18\x03 \x01(\x04H\x01R\x05since\x88\x01\x01\x12\x19\n\x05until\x18\x04 \x01(\x04H\x02R\x05until\x88\x01\x01\x12\x19\n\x05limit\x18\x05 \x01(\x04H\x03R\x05limit\x88\x01\x01\x12 \n\tstart_key\x18\x06 \x01(\tH\x04R\x08startKey\x88\x01\x01\x12\x46\n\x03use\x18\x07 \x03(\x0e\x32\x34.stabilityai.platformapis.project.v1.ProjectAssetUseR\x03use\x12N\n\x08sort_dir\x18\x08 \x01(\x0e\x32\x33.stabilityai.platformapis.project.v1.ProjectSortDirR\x07sortDir\x12U\n\x04tags\x18\t \x03(\x0b\x32\x41.stabilityai.platformapis.project.v1.QueryAssetsRequest.TagsEntryR\x04tags\x1a\x37\n\tTagsEntry\x12\x10\n\x03key\x18\x01 \x01(\tR\x03key\x12\x14\n\x05value\x18\x02 \x01(\tR\x05value:\x02\x38\x01\x42\x0b\n\t_owner_idB\x08\n\x06_sinceB\x08\n\x06_untilB\x08\n\x06_limitB\x0c\n\n_start_key\"\x8d\x01\n\x13QueryAssetsResponse\x12I\n\x06\x61ssets\x18\x01 \x03(\x0b\x32\x31.stabilityai.platformapis.project.v1.ProjectAssetR\x06\x61ssets\x12\x1e\n\x08last_key\x18\x02 \x01(\tH\x00R\x07lastKey\x88\x01\x01\x42\x0b\n\t_last_key\"\xfa\x01\n\x10TagAssetsRequest\x12\x0e\n\x02id\x18\x01 \x01(\tR\x02id\x12\x1e\n\x08owner_id\x18\x02 \x01(\tH\x00R\x07ownerId\x88\x01\x01\x12\x1b\n\tasset_ids\x18\x03 \x03(\tR\x08\x61ssetIds\x12S\n\x04tags\x18\x04 \x03(\x0b\x32?.stabilityai.platformapis.project.v1.TagAssetsRequest.TagsEntryR\x04tags\x1a\x37\n\tTagsEntry\x12\x10\n\x03key\x18\x01 \x01(\tR\x03key\x12\x14\n\x05value\x18\x02 \x01(\tR\x05value:\x02\x38\x01\x42\x0b\n\t_owner_id\"[\n\x11TagAssetsResponse\x12\x0e\n\x02id\x18\x01 \x01(\tR\x02id\x12\x19\n\x08owner_id\x18\x02 \x01(\tR\x07ownerId\x12\x1b\n\tasset_ids\x18\x03 \x03(\tR\x08\x61ssetIds\"\x89\x01\n\x12UntagAssetsRequest\x12\x0e\n\x02id\x18\x01 \x01(\tR\x02id\x12\x1e\n\x08owner_id\x18\x02 \x01(\tH\x00R\x07ownerId\x88\x01\x01\x12\x1b\n\tasset_ids\x18\x03 \x03(\tR\x08\x61ssetIds\x12\x19\n\x08tag_keys\x18\x04 \x03(\tR\x07tagKeysB\x0b\n\t_owner_id\"]\n\x13UntagAssetsResponse\x12\x0e\n\x02id\x18\x01 \x01(\tR\x02id\x12\x19\n\x08owner_id\x18\x02 \x01(\tR\x07ownerId\x12\x1b\n\tasset_ids\x18\x03 \x03(\tR\x08\x61ssetIds\"o\n\x13\x44\x65leteAssetsRequest\x12\x0e\n\x02id\x18\x01 \x01(\tR\x02id\x12\x1e\n\x08owner_id\x18\x02 \x01(\tH\x00R\x07ownerId\x88\x01\x01\x12\x1b\n\tasset_ids\x18\x03 \x03(\tR\x08\x61ssetIdsB\x0b\n\t_owner_id\"^\n\x14\x44\x65leteAssetsResponse\x12\x0e\n\x02id\x18\x01 \x01(\tR\x02id\x12\x19\n\x08owner_id\x18\x02 \x01(\tR\x07ownerId\x12\x1b\n\tasset_ids\x18\x03 \x03(\tR\x08\x61ssetIds*F\n\rProjectAccess\x12\x1a\n\x16PROJECT_ACCESS_PRIVATE\x10\x00\x12\x19\n\x15PROJECT_ACCESS_PUBLIC\x10\x01*c\n\rProjectStatus\x12\x1b\n\x17PROJECT_STATUS_INACTIVE\x10\x00\x12\x19\n\x15PROJECT_STATUS_ACTIVE\x10\x01\x12\x1a\n\x16PROJECT_STATUS_DELETED\x10\x02*\xb0\x01\n\x0fProjectAssetUse\x12\x1f\n\x1bPROJECT_ASSET_USE_UNDEFINED\x10\x00\x12\x1b\n\x17PROJECT_ASSET_USE_INPUT\x10\x01\x12\x1c\n\x18PROJECT_ASSET_USE_OUTPUT\x10\x02\x12\"\n\x1ePROJECT_ASSET_USE_INTERMEDIATE\x10\x03\x12\x1d\n\x19PROJECT_ASSET_USE_PROJECT\x10\x04*g\n\x0eProjectSortDir\x12 \n\x1cPROJECT_SORT_DIR_UNSPECIFIED\x10\x00\x12\x18\n\x14PROJECT_SORT_DIR_ASC\x10\x01\x12\x19\n\x15PROJECT_SORT_DIR_DESC\x10\x02*F\n\x0bProjectType\x12\x1c\n\x18PROJECT_TYPE_UNSPECIFIED\x10\x00\x12\x19\n\x15PROJECT_TYPE_TRAINING\x10\x01\x32\xe1\x08\n\x0eProjectService\x12s\n\x06\x43reate\x12\x39.stabilityai.platformapis.project.v1.CreateProjectRequest\x1a,.stabilityai.platformapis.project.v1.Project\"\x00\x12s\n\x06Update\x12\x39.stabilityai.platformapis.project.v1.UpdateProjectRequest\x1a,.stabilityai.platformapis.project.v1.Project\"\x00\x12q\n\x04List\x12\x37.stabilityai.platformapis.project.v1.ListProjectRequest\x1a,.stabilityai.platformapis.project.v1.Project\"\x00\x30\x01\x12m\n\x03Get\x12\x36.stabilityai.platformapis.project.v1.GetProjectRequest\x1a,.stabilityai.platformapis.project.v1.Project\"\x00\x12s\n\x06\x44\x65lete\x12\x39.stabilityai.platformapis.project.v1.DeleteProjectRequest\x1a,.stabilityai.platformapis.project.v1.Project\"\x00\x12|\n\tTagAssets\x12\x35.stabilityai.platformapis.project.v1.TagAssetsRequest\x1a\x36.stabilityai.platformapis.project.v1.TagAssetsResponse\"\x00\x12\x82\x01\n\x0bUntagAssets\x12\x37.stabilityai.platformapis.project.v1.UntagAssetsRequest\x1a\x38.stabilityai.platformapis.project.v1.UntagAssetsResponse\"\x00\x12\x82\x01\n\x0bQueryAssets\x12\x37.stabilityai.platformapis.project.v1.QueryAssetsRequest\x1a\x38.stabilityai.platformapis.project.v1.QueryAssetsResponse\"\x00\x12\x85\x01\n\x0c\x44\x65leteAssets\x12\x38.stabilityai.platformapis.project.v1.DeleteAssetsRequest\x1a\x39.stabilityai.platformapis.project.v1.DeleteAssetsResponse\"\x00\x42\xc7\x02\n\'com.stabilityai.platformapis.project.v1B\x0cProjectProtoP\x01Z_github.com/stability-ai/api-interfaces/gen/proto/go/stability_api/platform/project/v1;projectv1\xa2\x02\x03SPP\xaa\x02#Stabilityai.Platformapis.Project.V1\xca\x02#Stabilityai\\Platformapis\\Project\\V1\xe2\x02/Stabilityai\\Platformapis\\Project\\V1\\GPBMetadata\xea\x02&Stabilityai::Platformapis::Project::V1b\x06proto3') + +_globals = globals() +_builder.BuildMessageAndEnumDescriptors(DESCRIPTOR, _globals) +_builder.BuildTopDescriptorsAndMessages(DESCRIPTOR, 'stability_api.platform.project.v1.project_pb2', _globals) +if _descriptor._USE_C_DESCRIPTORS == False: + + DESCRIPTOR._options = None + DESCRIPTOR._serialized_options = b'\n\'com.stabilityai.platformapis.project.v1B\014ProjectProtoP\001Z_github.com/stability-ai/api-interfaces/gen/proto/go/stability_api/platform/project/v1;projectv1\242\002\003SPP\252\002#Stabilityai.Platformapis.Project.V1\312\002#Stabilityai\\Platformapis\\Project\\V1\342\002/Stabilityai\\Platformapis\\Project\\V1\\GPBMetadata\352\002&Stabilityai::Platformapis::Project::V1' + _PROJECTASSET_TAGSENTRY._options = None + _PROJECTASSET_TAGSENTRY._serialized_options = b'8\001' + _QUERYASSETSREQUEST_TAGSENTRY._options = None + _QUERYASSETSREQUEST_TAGSENTRY._serialized_options = b'8\001' + _TAGASSETSREQUEST_TAGSENTRY._options = None + _TAGASSETSREQUEST_TAGSENTRY._serialized_options = b'8\001' + _globals['_PROJECTACCESS']._serialized_start=3690 + _globals['_PROJECTACCESS']._serialized_end=3760 + _globals['_PROJECTSTATUS']._serialized_start=3762 + _globals['_PROJECTSTATUS']._serialized_end=3861 + _globals['_PROJECTASSETUSE']._serialized_start=3864 + _globals['_PROJECTASSETUSE']._serialized_end=4040 + _globals['_PROJECTSORTDIR']._serialized_start=4042 + _globals['_PROJECTSORTDIR']._serialized_end=4145 + _globals['_PROJECTTYPE']._serialized_start=4147 + _globals['_PROJECTTYPE']._serialized_end=4217 + _globals['_PROJECTASSET']._serialized_start=144 + _globals['_PROJECTASSET']._serialized_end=579 + _globals['_PROJECTASSET_TAGSENTRY']._serialized_start=524 + _globals['_PROJECTASSET_TAGSENTRY']._serialized_end=579 + _globals['_PROJECT']._serialized_start=582 + _globals['_PROJECT']._serialized_end=1106 + _globals['_CREATEPROJECTREQUEST']._serialized_start=1109 + _globals['_CREATEPROJECTREQUEST']._serialized_end=1505 + _globals['_UPDATEPROJECTREQUEST']._serialized_start=1508 + _globals['_UPDATEPROJECTREQUEST']._serialized_end=1981 + _globals['_LISTPROJECTREQUEST']._serialized_start=1983 + _globals['_LISTPROJECTREQUEST']._serialized_end=2048 + _globals['_GETPROJECTREQUEST']._serialized_start=2050 + _globals['_GETPROJECTREQUEST']._serialized_end=2130 + _globals['_DELETEPROJECTREQUEST']._serialized_start=2132 + _globals['_DELETEPROJECTREQUEST']._serialized_end=2215 + _globals['_QUERYASSETSREQUEST']._serialized_start=2218 + _globals['_QUERYASSETSREQUEST']._serialized_end=2754 + _globals['_QUERYASSETSREQUEST_TAGSENTRY']._serialized_start=524 + _globals['_QUERYASSETSREQUEST_TAGSENTRY']._serialized_end=579 + _globals['_QUERYASSETSRESPONSE']._serialized_start=2757 + _globals['_QUERYASSETSRESPONSE']._serialized_end=2898 + _globals['_TAGASSETSREQUEST']._serialized_start=2901 + _globals['_TAGASSETSREQUEST']._serialized_end=3151 + _globals['_TAGASSETSREQUEST_TAGSENTRY']._serialized_start=524 + _globals['_TAGASSETSREQUEST_TAGSENTRY']._serialized_end=579 + _globals['_TAGASSETSRESPONSE']._serialized_start=3153 + _globals['_TAGASSETSRESPONSE']._serialized_end=3244 + _globals['_UNTAGASSETSREQUEST']._serialized_start=3247 + _globals['_UNTAGASSETSREQUEST']._serialized_end=3384 + _globals['_UNTAGASSETSRESPONSE']._serialized_start=3386 + _globals['_UNTAGASSETSRESPONSE']._serialized_end=3479 + _globals['_DELETEASSETSREQUEST']._serialized_start=3481 + _globals['_DELETEASSETSREQUEST']._serialized_end=3592 + _globals['_DELETEASSETSRESPONSE']._serialized_start=3594 + _globals['_DELETEASSETSRESPONSE']._serialized_end=3688 + _globals['_PROJECTSERVICE']._serialized_start=4220 + _globals['_PROJECTSERVICE']._serialized_end=5341 +# @@protoc_insertion_point(module_scope) diff --git a/src/stability_api/platform/project/v1/project_pb2.pyi b/src/stability_api/platform/project/v1/project_pb2.pyi new file mode 100644 index 0000000..29aaafa --- /dev/null +++ b/src/stability_api/platform/project/v1/project_pb2.pyi @@ -0,0 +1,272 @@ +from stability_api.platform.generation.v1 import generation_pb2 as _generation_pb2 +from google.protobuf.internal import containers as _containers +from google.protobuf.internal import enum_type_wrapper as _enum_type_wrapper +from google.protobuf import descriptor as _descriptor +from google.protobuf import message as _message +from typing import ClassVar as _ClassVar, Iterable as _Iterable, Mapping as _Mapping, Optional as _Optional, Union as _Union + +DESCRIPTOR: _descriptor.FileDescriptor + +class ProjectAccess(int, metaclass=_enum_type_wrapper.EnumTypeWrapper): + __slots__ = [] + PROJECT_ACCESS_PRIVATE: _ClassVar[ProjectAccess] + PROJECT_ACCESS_PUBLIC: _ClassVar[ProjectAccess] + +class ProjectStatus(int, metaclass=_enum_type_wrapper.EnumTypeWrapper): + __slots__ = [] + PROJECT_STATUS_INACTIVE: _ClassVar[ProjectStatus] + PROJECT_STATUS_ACTIVE: _ClassVar[ProjectStatus] + PROJECT_STATUS_DELETED: _ClassVar[ProjectStatus] + +class ProjectAssetUse(int, metaclass=_enum_type_wrapper.EnumTypeWrapper): + __slots__ = [] + PROJECT_ASSET_USE_UNDEFINED: _ClassVar[ProjectAssetUse] + PROJECT_ASSET_USE_INPUT: _ClassVar[ProjectAssetUse] + PROJECT_ASSET_USE_OUTPUT: _ClassVar[ProjectAssetUse] + PROJECT_ASSET_USE_INTERMEDIATE: _ClassVar[ProjectAssetUse] + PROJECT_ASSET_USE_PROJECT: _ClassVar[ProjectAssetUse] + +class ProjectSortDir(int, metaclass=_enum_type_wrapper.EnumTypeWrapper): + __slots__ = [] + PROJECT_SORT_DIR_UNSPECIFIED: _ClassVar[ProjectSortDir] + PROJECT_SORT_DIR_ASC: _ClassVar[ProjectSortDir] + PROJECT_SORT_DIR_DESC: _ClassVar[ProjectSortDir] + +class ProjectType(int, metaclass=_enum_type_wrapper.EnumTypeWrapper): + __slots__ = [] + PROJECT_TYPE_UNSPECIFIED: _ClassVar[ProjectType] + PROJECT_TYPE_TRAINING: _ClassVar[ProjectType] +PROJECT_ACCESS_PRIVATE: ProjectAccess +PROJECT_ACCESS_PUBLIC: ProjectAccess +PROJECT_STATUS_INACTIVE: ProjectStatus +PROJECT_STATUS_ACTIVE: ProjectStatus +PROJECT_STATUS_DELETED: ProjectStatus +PROJECT_ASSET_USE_UNDEFINED: ProjectAssetUse +PROJECT_ASSET_USE_INPUT: ProjectAssetUse +PROJECT_ASSET_USE_OUTPUT: ProjectAssetUse +PROJECT_ASSET_USE_INTERMEDIATE: ProjectAssetUse +PROJECT_ASSET_USE_PROJECT: ProjectAssetUse +PROJECT_SORT_DIR_UNSPECIFIED: ProjectSortDir +PROJECT_SORT_DIR_ASC: ProjectSortDir +PROJECT_SORT_DIR_DESC: ProjectSortDir +PROJECT_TYPE_UNSPECIFIED: ProjectType +PROJECT_TYPE_TRAINING: ProjectType + +class ProjectAsset(_message.Message): + __slots__ = ["id", "uri", "use", "name", "size", "created_at", "updated_at", "request", "tags"] + class TagsEntry(_message.Message): + __slots__ = ["key", "value"] + KEY_FIELD_NUMBER: _ClassVar[int] + VALUE_FIELD_NUMBER: _ClassVar[int] + key: str + value: str + def __init__(self, key: _Optional[str] = ..., value: _Optional[str] = ...) -> None: ... + ID_FIELD_NUMBER: _ClassVar[int] + URI_FIELD_NUMBER: _ClassVar[int] + USE_FIELD_NUMBER: _ClassVar[int] + NAME_FIELD_NUMBER: _ClassVar[int] + SIZE_FIELD_NUMBER: _ClassVar[int] + CREATED_AT_FIELD_NUMBER: _ClassVar[int] + UPDATED_AT_FIELD_NUMBER: _ClassVar[int] + REQUEST_FIELD_NUMBER: _ClassVar[int] + TAGS_FIELD_NUMBER: _ClassVar[int] + id: str + uri: str + use: ProjectAssetUse + name: str + size: int + created_at: int + updated_at: int + request: _generation_pb2.Request + tags: _containers.ScalarMap[str, str] + def __init__(self, id: _Optional[str] = ..., uri: _Optional[str] = ..., use: _Optional[_Union[ProjectAssetUse, str]] = ..., name: _Optional[str] = ..., size: _Optional[int] = ..., created_at: _Optional[int] = ..., updated_at: _Optional[int] = ..., request: _Optional[_Union[_generation_pb2.Request, _Mapping]] = ..., tags: _Optional[_Mapping[str, str]] = ...) -> None: ... + +class Project(_message.Message): + __slots__ = ["id", "title", "owner_id", "access", "status", "size", "file", "created_at", "updated_at", "assets", "type"] + ID_FIELD_NUMBER: _ClassVar[int] + TITLE_FIELD_NUMBER: _ClassVar[int] + OWNER_ID_FIELD_NUMBER: _ClassVar[int] + ACCESS_FIELD_NUMBER: _ClassVar[int] + STATUS_FIELD_NUMBER: _ClassVar[int] + SIZE_FIELD_NUMBER: _ClassVar[int] + FILE_FIELD_NUMBER: _ClassVar[int] + CREATED_AT_FIELD_NUMBER: _ClassVar[int] + UPDATED_AT_FIELD_NUMBER: _ClassVar[int] + ASSETS_FIELD_NUMBER: _ClassVar[int] + TYPE_FIELD_NUMBER: _ClassVar[int] + id: str + title: str + owner_id: str + access: ProjectAccess + status: ProjectStatus + size: int + file: ProjectAsset + created_at: int + updated_at: int + assets: _containers.RepeatedCompositeFieldContainer[ProjectAsset] + type: ProjectType + def __init__(self, id: _Optional[str] = ..., title: _Optional[str] = ..., owner_id: _Optional[str] = ..., access: _Optional[_Union[ProjectAccess, str]] = ..., status: _Optional[_Union[ProjectStatus, str]] = ..., size: _Optional[int] = ..., file: _Optional[_Union[ProjectAsset, _Mapping]] = ..., created_at: _Optional[int] = ..., updated_at: _Optional[int] = ..., assets: _Optional[_Iterable[_Union[ProjectAsset, _Mapping]]] = ..., type: _Optional[_Union[ProjectType, str]] = ...) -> None: ... + +class CreateProjectRequest(_message.Message): + __slots__ = ["title", "owner_id", "access", "status", "file", "type"] + TITLE_FIELD_NUMBER: _ClassVar[int] + OWNER_ID_FIELD_NUMBER: _ClassVar[int] + ACCESS_FIELD_NUMBER: _ClassVar[int] + STATUS_FIELD_NUMBER: _ClassVar[int] + FILE_FIELD_NUMBER: _ClassVar[int] + TYPE_FIELD_NUMBER: _ClassVar[int] + title: str + owner_id: str + access: ProjectAccess + status: ProjectStatus + file: ProjectAsset + type: ProjectType + def __init__(self, title: _Optional[str] = ..., owner_id: _Optional[str] = ..., access: _Optional[_Union[ProjectAccess, str]] = ..., status: _Optional[_Union[ProjectStatus, str]] = ..., file: _Optional[_Union[ProjectAsset, _Mapping]] = ..., type: _Optional[_Union[ProjectType, str]] = ...) -> None: ... + +class UpdateProjectRequest(_message.Message): + __slots__ = ["id", "owner_id", "title", "access", "status", "file", "type"] + ID_FIELD_NUMBER: _ClassVar[int] + OWNER_ID_FIELD_NUMBER: _ClassVar[int] + TITLE_FIELD_NUMBER: _ClassVar[int] + ACCESS_FIELD_NUMBER: _ClassVar[int] + STATUS_FIELD_NUMBER: _ClassVar[int] + FILE_FIELD_NUMBER: _ClassVar[int] + TYPE_FIELD_NUMBER: _ClassVar[int] + id: str + owner_id: str + title: str + access: ProjectAccess + status: ProjectStatus + file: ProjectAsset + type: ProjectType + def __init__(self, id: _Optional[str] = ..., owner_id: _Optional[str] = ..., title: _Optional[str] = ..., access: _Optional[_Union[ProjectAccess, str]] = ..., status: _Optional[_Union[ProjectStatus, str]] = ..., file: _Optional[_Union[ProjectAsset, _Mapping]] = ..., type: _Optional[_Union[ProjectType, str]] = ...) -> None: ... + +class ListProjectRequest(_message.Message): + __slots__ = ["owner_id"] + OWNER_ID_FIELD_NUMBER: _ClassVar[int] + owner_id: str + def __init__(self, owner_id: _Optional[str] = ...) -> None: ... + +class GetProjectRequest(_message.Message): + __slots__ = ["id", "owner_id"] + ID_FIELD_NUMBER: _ClassVar[int] + OWNER_ID_FIELD_NUMBER: _ClassVar[int] + id: str + owner_id: str + def __init__(self, id: _Optional[str] = ..., owner_id: _Optional[str] = ...) -> None: ... + +class DeleteProjectRequest(_message.Message): + __slots__ = ["id", "owner_id"] + ID_FIELD_NUMBER: _ClassVar[int] + OWNER_ID_FIELD_NUMBER: _ClassVar[int] + id: str + owner_id: str + def __init__(self, id: _Optional[str] = ..., owner_id: _Optional[str] = ...) -> None: ... + +class QueryAssetsRequest(_message.Message): + __slots__ = ["id", "owner_id", "since", "until", "limit", "start_key", "use", "sort_dir", "tags"] + class TagsEntry(_message.Message): + __slots__ = ["key", "value"] + KEY_FIELD_NUMBER: _ClassVar[int] + VALUE_FIELD_NUMBER: _ClassVar[int] + key: str + value: str + def __init__(self, key: _Optional[str] = ..., value: _Optional[str] = ...) -> None: ... + ID_FIELD_NUMBER: _ClassVar[int] + OWNER_ID_FIELD_NUMBER: _ClassVar[int] + SINCE_FIELD_NUMBER: _ClassVar[int] + UNTIL_FIELD_NUMBER: _ClassVar[int] + LIMIT_FIELD_NUMBER: _ClassVar[int] + START_KEY_FIELD_NUMBER: _ClassVar[int] + USE_FIELD_NUMBER: _ClassVar[int] + SORT_DIR_FIELD_NUMBER: _ClassVar[int] + TAGS_FIELD_NUMBER: _ClassVar[int] + id: str + owner_id: str + since: int + until: int + limit: int + start_key: str + use: _containers.RepeatedScalarFieldContainer[ProjectAssetUse] + sort_dir: ProjectSortDir + tags: _containers.ScalarMap[str, str] + def __init__(self, id: _Optional[str] = ..., owner_id: _Optional[str] = ..., since: _Optional[int] = ..., until: _Optional[int] = ..., limit: _Optional[int] = ..., start_key: _Optional[str] = ..., use: _Optional[_Iterable[_Union[ProjectAssetUse, str]]] = ..., sort_dir: _Optional[_Union[ProjectSortDir, str]] = ..., tags: _Optional[_Mapping[str, str]] = ...) -> None: ... + +class QueryAssetsResponse(_message.Message): + __slots__ = ["assets", "last_key"] + ASSETS_FIELD_NUMBER: _ClassVar[int] + LAST_KEY_FIELD_NUMBER: _ClassVar[int] + assets: _containers.RepeatedCompositeFieldContainer[ProjectAsset] + last_key: str + def __init__(self, assets: _Optional[_Iterable[_Union[ProjectAsset, _Mapping]]] = ..., last_key: _Optional[str] = ...) -> None: ... + +class TagAssetsRequest(_message.Message): + __slots__ = ["id", "owner_id", "asset_ids", "tags"] + class TagsEntry(_message.Message): + __slots__ = ["key", "value"] + KEY_FIELD_NUMBER: _ClassVar[int] + VALUE_FIELD_NUMBER: _ClassVar[int] + key: str + value: str + def __init__(self, key: _Optional[str] = ..., value: _Optional[str] = ...) -> None: ... + ID_FIELD_NUMBER: _ClassVar[int] + OWNER_ID_FIELD_NUMBER: _ClassVar[int] + ASSET_IDS_FIELD_NUMBER: _ClassVar[int] + TAGS_FIELD_NUMBER: _ClassVar[int] + id: str + owner_id: str + asset_ids: _containers.RepeatedScalarFieldContainer[str] + tags: _containers.ScalarMap[str, str] + def __init__(self, id: _Optional[str] = ..., owner_id: _Optional[str] = ..., asset_ids: _Optional[_Iterable[str]] = ..., tags: _Optional[_Mapping[str, str]] = ...) -> None: ... + +class TagAssetsResponse(_message.Message): + __slots__ = ["id", "owner_id", "asset_ids"] + ID_FIELD_NUMBER: _ClassVar[int] + OWNER_ID_FIELD_NUMBER: _ClassVar[int] + ASSET_IDS_FIELD_NUMBER: _ClassVar[int] + id: str + owner_id: str + asset_ids: _containers.RepeatedScalarFieldContainer[str] + def __init__(self, id: _Optional[str] = ..., owner_id: _Optional[str] = ..., asset_ids: _Optional[_Iterable[str]] = ...) -> None: ... + +class UntagAssetsRequest(_message.Message): + __slots__ = ["id", "owner_id", "asset_ids", "tag_keys"] + ID_FIELD_NUMBER: _ClassVar[int] + OWNER_ID_FIELD_NUMBER: _ClassVar[int] + ASSET_IDS_FIELD_NUMBER: _ClassVar[int] + TAG_KEYS_FIELD_NUMBER: _ClassVar[int] + id: str + owner_id: str + asset_ids: _containers.RepeatedScalarFieldContainer[str] + tag_keys: _containers.RepeatedScalarFieldContainer[str] + def __init__(self, id: _Optional[str] = ..., owner_id: _Optional[str] = ..., asset_ids: _Optional[_Iterable[str]] = ..., tag_keys: _Optional[_Iterable[str]] = ...) -> None: ... + +class UntagAssetsResponse(_message.Message): + __slots__ = ["id", "owner_id", "asset_ids"] + ID_FIELD_NUMBER: _ClassVar[int] + OWNER_ID_FIELD_NUMBER: _ClassVar[int] + ASSET_IDS_FIELD_NUMBER: _ClassVar[int] + id: str + owner_id: str + asset_ids: _containers.RepeatedScalarFieldContainer[str] + def __init__(self, id: _Optional[str] = ..., owner_id: _Optional[str] = ..., asset_ids: _Optional[_Iterable[str]] = ...) -> None: ... + +class DeleteAssetsRequest(_message.Message): + __slots__ = ["id", "owner_id", "asset_ids"] + ID_FIELD_NUMBER: _ClassVar[int] + OWNER_ID_FIELD_NUMBER: _ClassVar[int] + ASSET_IDS_FIELD_NUMBER: _ClassVar[int] + id: str + owner_id: str + asset_ids: _containers.RepeatedScalarFieldContainer[str] + def __init__(self, id: _Optional[str] = ..., owner_id: _Optional[str] = ..., asset_ids: _Optional[_Iterable[str]] = ...) -> None: ... + +class DeleteAssetsResponse(_message.Message): + __slots__ = ["id", "owner_id", "asset_ids"] + ID_FIELD_NUMBER: _ClassVar[int] + OWNER_ID_FIELD_NUMBER: _ClassVar[int] + ASSET_IDS_FIELD_NUMBER: _ClassVar[int] + id: str + owner_id: str + asset_ids: _containers.RepeatedScalarFieldContainer[str] + def __init__(self, id: _Optional[str] = ..., owner_id: _Optional[str] = ..., asset_ids: _Optional[_Iterable[str]] = ...) -> None: ... diff --git a/src/stability_api/platform/project/v1/project_pb2_grpc.py b/src/stability_api/platform/project/v1/project_pb2_grpc.py new file mode 100644 index 0000000..141a11c --- /dev/null +++ b/src/stability_api/platform/project/v1/project_pb2_grpc.py @@ -0,0 +1,347 @@ +# Generated by the gRPC Python protocol compiler plugin. DO NOT EDIT! +"""Client and server classes corresponding to protobuf-defined services.""" +import grpc + +from stability_api.platform.project.v1 import project_pb2 as stability__api_dot_platform_dot_project_dot_v1_dot_project__pb2 + + +class ProjectServiceStub(object): + """ + gRPC services + + """ + + def __init__(self, channel): + """Constructor. + + Args: + channel: A grpc.Channel. + """ + self.Create = channel.unary_unary( + '/stabilityai.platformapis.project.v1.ProjectService/Create', + request_serializer=stability__api_dot_platform_dot_project_dot_v1_dot_project__pb2.CreateProjectRequest.SerializeToString, + response_deserializer=stability__api_dot_platform_dot_project_dot_v1_dot_project__pb2.Project.FromString, + ) + self.Update = channel.unary_unary( + '/stabilityai.platformapis.project.v1.ProjectService/Update', + request_serializer=stability__api_dot_platform_dot_project_dot_v1_dot_project__pb2.UpdateProjectRequest.SerializeToString, + response_deserializer=stability__api_dot_platform_dot_project_dot_v1_dot_project__pb2.Project.FromString, + ) + self.List = channel.unary_stream( + '/stabilityai.platformapis.project.v1.ProjectService/List', + request_serializer=stability__api_dot_platform_dot_project_dot_v1_dot_project__pb2.ListProjectRequest.SerializeToString, + response_deserializer=stability__api_dot_platform_dot_project_dot_v1_dot_project__pb2.Project.FromString, + ) + self.Get = channel.unary_unary( + '/stabilityai.platformapis.project.v1.ProjectService/Get', + request_serializer=stability__api_dot_platform_dot_project_dot_v1_dot_project__pb2.GetProjectRequest.SerializeToString, + response_deserializer=stability__api_dot_platform_dot_project_dot_v1_dot_project__pb2.Project.FromString, + ) + self.Delete = channel.unary_unary( + '/stabilityai.platformapis.project.v1.ProjectService/Delete', + request_serializer=stability__api_dot_platform_dot_project_dot_v1_dot_project__pb2.DeleteProjectRequest.SerializeToString, + response_deserializer=stability__api_dot_platform_dot_project_dot_v1_dot_project__pb2.Project.FromString, + ) + self.TagAssets = channel.unary_unary( + '/stabilityai.platformapis.project.v1.ProjectService/TagAssets', + request_serializer=stability__api_dot_platform_dot_project_dot_v1_dot_project__pb2.TagAssetsRequest.SerializeToString, + response_deserializer=stability__api_dot_platform_dot_project_dot_v1_dot_project__pb2.TagAssetsResponse.FromString, + ) + self.UntagAssets = channel.unary_unary( + '/stabilityai.platformapis.project.v1.ProjectService/UntagAssets', + request_serializer=stability__api_dot_platform_dot_project_dot_v1_dot_project__pb2.UntagAssetsRequest.SerializeToString, + response_deserializer=stability__api_dot_platform_dot_project_dot_v1_dot_project__pb2.UntagAssetsResponse.FromString, + ) + self.QueryAssets = channel.unary_unary( + '/stabilityai.platformapis.project.v1.ProjectService/QueryAssets', + request_serializer=stability__api_dot_platform_dot_project_dot_v1_dot_project__pb2.QueryAssetsRequest.SerializeToString, + response_deserializer=stability__api_dot_platform_dot_project_dot_v1_dot_project__pb2.QueryAssetsResponse.FromString, + ) + self.DeleteAssets = channel.unary_unary( + '/stabilityai.platformapis.project.v1.ProjectService/DeleteAssets', + request_serializer=stability__api_dot_platform_dot_project_dot_v1_dot_project__pb2.DeleteAssetsRequest.SerializeToString, + response_deserializer=stability__api_dot_platform_dot_project_dot_v1_dot_project__pb2.DeleteAssetsResponse.FromString, + ) + + +class ProjectServiceServicer(object): + """ + gRPC services + + """ + + def Create(self, request, context): + """Create a new project if it does not exist + """ + context.set_code(grpc.StatusCode.UNIMPLEMENTED) + context.set_details('Method not implemented!') + raise NotImplementedError('Method not implemented!') + + def Update(self, request, context): + """Update an existing project + """ + context.set_code(grpc.StatusCode.UNIMPLEMENTED) + context.set_details('Method not implemented!') + raise NotImplementedError('Method not implemented!') + + def List(self, request, context): + """List all the projects for an organization + """ + context.set_code(grpc.StatusCode.UNIMPLEMENTED) + context.set_details('Method not implemented!') + raise NotImplementedError('Method not implemented!') + + def Get(self, request, context): + """Get a project + """ + context.set_code(grpc.StatusCode.UNIMPLEMENTED) + context.set_details('Method not implemented!') + raise NotImplementedError('Method not implemented!') + + def Delete(self, request, context): + """Delete a project + """ + context.set_code(grpc.StatusCode.UNIMPLEMENTED) + context.set_details('Method not implemented!') + raise NotImplementedError('Method not implemented!') + + def TagAssets(self, request, context): + """Add or remove tags from an asset + """ + context.set_code(grpc.StatusCode.UNIMPLEMENTED) + context.set_details('Method not implemented!') + raise NotImplementedError('Method not implemented!') + + def UntagAssets(self, request, context): + """Missing associated documentation comment in .proto file.""" + context.set_code(grpc.StatusCode.UNIMPLEMENTED) + context.set_details('Method not implemented!') + raise NotImplementedError('Method not implemented!') + + def QueryAssets(self, request, context): + """Query the assets of a project, with additional filtering + """ + context.set_code(grpc.StatusCode.UNIMPLEMENTED) + context.set_details('Method not implemented!') + raise NotImplementedError('Method not implemented!') + + def DeleteAssets(self, request, context): + """Delete one or more assets of a project + """ + context.set_code(grpc.StatusCode.UNIMPLEMENTED) + context.set_details('Method not implemented!') + raise NotImplementedError('Method not implemented!') + + +def add_ProjectServiceServicer_to_server(servicer, server): + rpc_method_handlers = { + 'Create': grpc.unary_unary_rpc_method_handler( + servicer.Create, + request_deserializer=stability__api_dot_platform_dot_project_dot_v1_dot_project__pb2.CreateProjectRequest.FromString, + response_serializer=stability__api_dot_platform_dot_project_dot_v1_dot_project__pb2.Project.SerializeToString, + ), + 'Update': grpc.unary_unary_rpc_method_handler( + servicer.Update, + request_deserializer=stability__api_dot_platform_dot_project_dot_v1_dot_project__pb2.UpdateProjectRequest.FromString, + response_serializer=stability__api_dot_platform_dot_project_dot_v1_dot_project__pb2.Project.SerializeToString, + ), + 'List': grpc.unary_stream_rpc_method_handler( + servicer.List, + request_deserializer=stability__api_dot_platform_dot_project_dot_v1_dot_project__pb2.ListProjectRequest.FromString, + response_serializer=stability__api_dot_platform_dot_project_dot_v1_dot_project__pb2.Project.SerializeToString, + ), + 'Get': grpc.unary_unary_rpc_method_handler( + servicer.Get, + request_deserializer=stability__api_dot_platform_dot_project_dot_v1_dot_project__pb2.GetProjectRequest.FromString, + response_serializer=stability__api_dot_platform_dot_project_dot_v1_dot_project__pb2.Project.SerializeToString, + ), + 'Delete': grpc.unary_unary_rpc_method_handler( + servicer.Delete, + request_deserializer=stability__api_dot_platform_dot_project_dot_v1_dot_project__pb2.DeleteProjectRequest.FromString, + response_serializer=stability__api_dot_platform_dot_project_dot_v1_dot_project__pb2.Project.SerializeToString, + ), + 'TagAssets': grpc.unary_unary_rpc_method_handler( + servicer.TagAssets, + request_deserializer=stability__api_dot_platform_dot_project_dot_v1_dot_project__pb2.TagAssetsRequest.FromString, + response_serializer=stability__api_dot_platform_dot_project_dot_v1_dot_project__pb2.TagAssetsResponse.SerializeToString, + ), + 'UntagAssets': grpc.unary_unary_rpc_method_handler( + servicer.UntagAssets, + request_deserializer=stability__api_dot_platform_dot_project_dot_v1_dot_project__pb2.UntagAssetsRequest.FromString, + response_serializer=stability__api_dot_platform_dot_project_dot_v1_dot_project__pb2.UntagAssetsResponse.SerializeToString, + ), + 'QueryAssets': grpc.unary_unary_rpc_method_handler( + servicer.QueryAssets, + request_deserializer=stability__api_dot_platform_dot_project_dot_v1_dot_project__pb2.QueryAssetsRequest.FromString, + response_serializer=stability__api_dot_platform_dot_project_dot_v1_dot_project__pb2.QueryAssetsResponse.SerializeToString, + ), + 'DeleteAssets': grpc.unary_unary_rpc_method_handler( + servicer.DeleteAssets, + request_deserializer=stability__api_dot_platform_dot_project_dot_v1_dot_project__pb2.DeleteAssetsRequest.FromString, + response_serializer=stability__api_dot_platform_dot_project_dot_v1_dot_project__pb2.DeleteAssetsResponse.SerializeToString, + ), + } + generic_handler = grpc.method_handlers_generic_handler( + 'stabilityai.platformapis.project.v1.ProjectService', rpc_method_handlers) + server.add_generic_rpc_handlers((generic_handler,)) + + + # This class is part of an EXPERIMENTAL API. +class ProjectService(object): + """ + gRPC services + + """ + + @staticmethod + def Create(request, + target, + options=(), + channel_credentials=None, + call_credentials=None, + insecure=False, + compression=None, + wait_for_ready=None, + timeout=None, + metadata=None): + return grpc.experimental.unary_unary(request, target, '/stabilityai.platformapis.project.v1.ProjectService/Create', + stability__api_dot_platform_dot_project_dot_v1_dot_project__pb2.CreateProjectRequest.SerializeToString, + stability__api_dot_platform_dot_project_dot_v1_dot_project__pb2.Project.FromString, + options, channel_credentials, + insecure, call_credentials, compression, wait_for_ready, timeout, metadata) + + @staticmethod + def Update(request, + target, + options=(), + channel_credentials=None, + call_credentials=None, + insecure=False, + compression=None, + wait_for_ready=None, + timeout=None, + metadata=None): + return grpc.experimental.unary_unary(request, target, '/stabilityai.platformapis.project.v1.ProjectService/Update', + stability__api_dot_platform_dot_project_dot_v1_dot_project__pb2.UpdateProjectRequest.SerializeToString, + stability__api_dot_platform_dot_project_dot_v1_dot_project__pb2.Project.FromString, + options, channel_credentials, + insecure, call_credentials, compression, wait_for_ready, timeout, metadata) + + @staticmethod + def List(request, + target, + options=(), + channel_credentials=None, + call_credentials=None, + insecure=False, + compression=None, + wait_for_ready=None, + timeout=None, + metadata=None): + return grpc.experimental.unary_stream(request, target, '/stabilityai.platformapis.project.v1.ProjectService/List', + stability__api_dot_platform_dot_project_dot_v1_dot_project__pb2.ListProjectRequest.SerializeToString, + stability__api_dot_platform_dot_project_dot_v1_dot_project__pb2.Project.FromString, + options, channel_credentials, + insecure, call_credentials, compression, wait_for_ready, timeout, metadata) + + @staticmethod + def Get(request, + target, + options=(), + channel_credentials=None, + call_credentials=None, + insecure=False, + compression=None, + wait_for_ready=None, + timeout=None, + metadata=None): + return grpc.experimental.unary_unary(request, target, '/stabilityai.platformapis.project.v1.ProjectService/Get', + stability__api_dot_platform_dot_project_dot_v1_dot_project__pb2.GetProjectRequest.SerializeToString, + stability__api_dot_platform_dot_project_dot_v1_dot_project__pb2.Project.FromString, + options, channel_credentials, + insecure, call_credentials, compression, wait_for_ready, timeout, metadata) + + @staticmethod + def Delete(request, + target, + options=(), + channel_credentials=None, + call_credentials=None, + insecure=False, + compression=None, + wait_for_ready=None, + timeout=None, + metadata=None): + return grpc.experimental.unary_unary(request, target, '/stabilityai.platformapis.project.v1.ProjectService/Delete', + stability__api_dot_platform_dot_project_dot_v1_dot_project__pb2.DeleteProjectRequest.SerializeToString, + stability__api_dot_platform_dot_project_dot_v1_dot_project__pb2.Project.FromString, + options, channel_credentials, + insecure, call_credentials, compression, wait_for_ready, timeout, metadata) + + @staticmethod + def TagAssets(request, + target, + options=(), + channel_credentials=None, + call_credentials=None, + insecure=False, + compression=None, + wait_for_ready=None, + timeout=None, + metadata=None): + return grpc.experimental.unary_unary(request, target, '/stabilityai.platformapis.project.v1.ProjectService/TagAssets', + stability__api_dot_platform_dot_project_dot_v1_dot_project__pb2.TagAssetsRequest.SerializeToString, + stability__api_dot_platform_dot_project_dot_v1_dot_project__pb2.TagAssetsResponse.FromString, + options, channel_credentials, + insecure, call_credentials, compression, wait_for_ready, timeout, metadata) + + @staticmethod + def UntagAssets(request, + target, + options=(), + channel_credentials=None, + call_credentials=None, + insecure=False, + compression=None, + wait_for_ready=None, + timeout=None, + metadata=None): + return grpc.experimental.unary_unary(request, target, '/stabilityai.platformapis.project.v1.ProjectService/UntagAssets', + stability__api_dot_platform_dot_project_dot_v1_dot_project__pb2.UntagAssetsRequest.SerializeToString, + stability__api_dot_platform_dot_project_dot_v1_dot_project__pb2.UntagAssetsResponse.FromString, + options, channel_credentials, + insecure, call_credentials, compression, wait_for_ready, timeout, metadata) + + @staticmethod + def QueryAssets(request, + target, + options=(), + channel_credentials=None, + call_credentials=None, + insecure=False, + compression=None, + wait_for_ready=None, + timeout=None, + metadata=None): + return grpc.experimental.unary_unary(request, target, '/stabilityai.platformapis.project.v1.ProjectService/QueryAssets', + stability__api_dot_platform_dot_project_dot_v1_dot_project__pb2.QueryAssetsRequest.SerializeToString, + stability__api_dot_platform_dot_project_dot_v1_dot_project__pb2.QueryAssetsResponse.FromString, + options, channel_credentials, + insecure, call_credentials, compression, wait_for_ready, timeout, metadata) + + @staticmethod + def DeleteAssets(request, + target, + options=(), + channel_credentials=None, + call_credentials=None, + insecure=False, + compression=None, + wait_for_ready=None, + timeout=None, + metadata=None): + return grpc.experimental.unary_unary(request, target, '/stabilityai.platformapis.project.v1.ProjectService/DeleteAssets', + stability__api_dot_platform_dot_project_dot_v1_dot_project__pb2.DeleteAssetsRequest.SerializeToString, + stability__api_dot_platform_dot_project_dot_v1_dot_project__pb2.DeleteAssetsResponse.FromString, + options, channel_credentials, + insecure, call_credentials, compression, wait_for_ready, timeout, metadata) diff --git a/src/stability_api/platform/project/v1/projectv1connect/project.connect.go b/src/stability_api/platform/project/v1/projectv1connect/project.connect.go new file mode 100644 index 0000000..8c808cc --- /dev/null +++ b/src/stability_api/platform/project/v1/projectv1connect/project.connect.go @@ -0,0 +1,335 @@ +// Code generated by protoc-gen-connect-go. DO NOT EDIT. +// +// Source: stability_api/platform/project/v1/project.proto + +package projectv1connect + +import ( + connect "connectrpc.com/connect" + context "context" + errors "errors" + v1 "github.com/stability-ai/api-interfaces/src/stability_api/platform/project/v1" + http "net/http" + strings "strings" +) + +// This is a compile-time assertion to ensure that this generated file and the connect package are +// compatible. If you get a compiler error that this constant is not defined, this code was +// generated with a version of connect newer than the one compiled into your binary. You can fix the +// problem by either regenerating this code with an older version of connect or updating the connect +// version compiled into your binary. +const _ = connect.IsAtLeastVersion0_1_0 + +const ( + // ProjectServiceName is the fully-qualified name of the ProjectService service. + ProjectServiceName = "stabilityai.platformapis.project.v1.ProjectService" +) + +// These constants are the fully-qualified names of the RPCs defined in this package. They're +// exposed at runtime as Spec.Procedure and as the final two segments of the HTTP route. +// +// Note that these are different from the fully-qualified method names used by +// google.golang.org/protobuf/reflect/protoreflect. To convert from these constants to +// reflection-formatted method names, remove the leading slash and convert the remaining slash to a +// period. +const ( + // ProjectServiceCreateProcedure is the fully-qualified name of the ProjectService's Create RPC. + ProjectServiceCreateProcedure = "/stabilityai.platformapis.project.v1.ProjectService/Create" + // ProjectServiceUpdateProcedure is the fully-qualified name of the ProjectService's Update RPC. + ProjectServiceUpdateProcedure = "/stabilityai.platformapis.project.v1.ProjectService/Update" + // ProjectServiceListProcedure is the fully-qualified name of the ProjectService's List RPC. + ProjectServiceListProcedure = "/stabilityai.platformapis.project.v1.ProjectService/List" + // ProjectServiceGetProcedure is the fully-qualified name of the ProjectService's Get RPC. + ProjectServiceGetProcedure = "/stabilityai.platformapis.project.v1.ProjectService/Get" + // ProjectServiceDeleteProcedure is the fully-qualified name of the ProjectService's Delete RPC. + ProjectServiceDeleteProcedure = "/stabilityai.platformapis.project.v1.ProjectService/Delete" + // ProjectServiceTagAssetsProcedure is the fully-qualified name of the ProjectService's TagAssets + // RPC. + ProjectServiceTagAssetsProcedure = "/stabilityai.platformapis.project.v1.ProjectService/TagAssets" + // ProjectServiceUntagAssetsProcedure is the fully-qualified name of the ProjectService's + // UntagAssets RPC. + ProjectServiceUntagAssetsProcedure = "/stabilityai.platformapis.project.v1.ProjectService/UntagAssets" + // ProjectServiceQueryAssetsProcedure is the fully-qualified name of the ProjectService's + // QueryAssets RPC. + ProjectServiceQueryAssetsProcedure = "/stabilityai.platformapis.project.v1.ProjectService/QueryAssets" + // ProjectServiceDeleteAssetsProcedure is the fully-qualified name of the ProjectService's + // DeleteAssets RPC. + ProjectServiceDeleteAssetsProcedure = "/stabilityai.platformapis.project.v1.ProjectService/DeleteAssets" +) + +// ProjectServiceClient is a client for the stabilityai.platformapis.project.v1.ProjectService +// service. +type ProjectServiceClient interface { + // Create a new project if it does not exist + Create(context.Context, *connect.Request[v1.CreateProjectRequest]) (*connect.Response[v1.Project], error) + // Update an existing project + Update(context.Context, *connect.Request[v1.UpdateProjectRequest]) (*connect.Response[v1.Project], error) + // List all the projects for an organization + List(context.Context, *connect.Request[v1.ListProjectRequest]) (*connect.ServerStreamForClient[v1.Project], error) + // Get a project + Get(context.Context, *connect.Request[v1.GetProjectRequest]) (*connect.Response[v1.Project], error) + // Delete a project + Delete(context.Context, *connect.Request[v1.DeleteProjectRequest]) (*connect.Response[v1.Project], error) + // Add or remove tags from an asset + TagAssets(context.Context, *connect.Request[v1.TagAssetsRequest]) (*connect.Response[v1.TagAssetsResponse], error) + UntagAssets(context.Context, *connect.Request[v1.UntagAssetsRequest]) (*connect.Response[v1.UntagAssetsResponse], error) + // Query the assets of a project, with additional filtering + QueryAssets(context.Context, *connect.Request[v1.QueryAssetsRequest]) (*connect.Response[v1.QueryAssetsResponse], error) + // Delete one or more assets of a project + DeleteAssets(context.Context, *connect.Request[v1.DeleteAssetsRequest]) (*connect.Response[v1.DeleteAssetsResponse], error) +} + +// NewProjectServiceClient constructs a client for the +// stabilityai.platformapis.project.v1.ProjectService service. By default, it uses the Connect +// protocol with the binary Protobuf Codec, asks for gzipped responses, and sends uncompressed +// requests. To use the gRPC or gRPC-Web protocols, supply the connect.WithGRPC() or +// connect.WithGRPCWeb() options. +// +// The URL supplied here should be the base URL for the Connect or gRPC server (for example, +// http://api.acme.com or https://acme.com/grpc). +func NewProjectServiceClient(httpClient connect.HTTPClient, baseURL string, opts ...connect.ClientOption) ProjectServiceClient { + baseURL = strings.TrimRight(baseURL, "/") + return &projectServiceClient{ + create: connect.NewClient[v1.CreateProjectRequest, v1.Project]( + httpClient, + baseURL+ProjectServiceCreateProcedure, + opts..., + ), + update: connect.NewClient[v1.UpdateProjectRequest, v1.Project]( + httpClient, + baseURL+ProjectServiceUpdateProcedure, + opts..., + ), + list: connect.NewClient[v1.ListProjectRequest, v1.Project]( + httpClient, + baseURL+ProjectServiceListProcedure, + opts..., + ), + get: connect.NewClient[v1.GetProjectRequest, v1.Project]( + httpClient, + baseURL+ProjectServiceGetProcedure, + opts..., + ), + delete: connect.NewClient[v1.DeleteProjectRequest, v1.Project]( + httpClient, + baseURL+ProjectServiceDeleteProcedure, + opts..., + ), + tagAssets: connect.NewClient[v1.TagAssetsRequest, v1.TagAssetsResponse]( + httpClient, + baseURL+ProjectServiceTagAssetsProcedure, + opts..., + ), + untagAssets: connect.NewClient[v1.UntagAssetsRequest, v1.UntagAssetsResponse]( + httpClient, + baseURL+ProjectServiceUntagAssetsProcedure, + opts..., + ), + queryAssets: connect.NewClient[v1.QueryAssetsRequest, v1.QueryAssetsResponse]( + httpClient, + baseURL+ProjectServiceQueryAssetsProcedure, + opts..., + ), + deleteAssets: connect.NewClient[v1.DeleteAssetsRequest, v1.DeleteAssetsResponse]( + httpClient, + baseURL+ProjectServiceDeleteAssetsProcedure, + opts..., + ), + } +} + +// projectServiceClient implements ProjectServiceClient. +type projectServiceClient struct { + create *connect.Client[v1.CreateProjectRequest, v1.Project] + update *connect.Client[v1.UpdateProjectRequest, v1.Project] + list *connect.Client[v1.ListProjectRequest, v1.Project] + get *connect.Client[v1.GetProjectRequest, v1.Project] + delete *connect.Client[v1.DeleteProjectRequest, v1.Project] + tagAssets *connect.Client[v1.TagAssetsRequest, v1.TagAssetsResponse] + untagAssets *connect.Client[v1.UntagAssetsRequest, v1.UntagAssetsResponse] + queryAssets *connect.Client[v1.QueryAssetsRequest, v1.QueryAssetsResponse] + deleteAssets *connect.Client[v1.DeleteAssetsRequest, v1.DeleteAssetsResponse] +} + +// Create calls stabilityai.platformapis.project.v1.ProjectService.Create. +func (c *projectServiceClient) Create(ctx context.Context, req *connect.Request[v1.CreateProjectRequest]) (*connect.Response[v1.Project], error) { + return c.create.CallUnary(ctx, req) +} + +// Update calls stabilityai.platformapis.project.v1.ProjectService.Update. +func (c *projectServiceClient) Update(ctx context.Context, req *connect.Request[v1.UpdateProjectRequest]) (*connect.Response[v1.Project], error) { + return c.update.CallUnary(ctx, req) +} + +// List calls stabilityai.platformapis.project.v1.ProjectService.List. +func (c *projectServiceClient) List(ctx context.Context, req *connect.Request[v1.ListProjectRequest]) (*connect.ServerStreamForClient[v1.Project], error) { + return c.list.CallServerStream(ctx, req) +} + +// Get calls stabilityai.platformapis.project.v1.ProjectService.Get. +func (c *projectServiceClient) Get(ctx context.Context, req *connect.Request[v1.GetProjectRequest]) (*connect.Response[v1.Project], error) { + return c.get.CallUnary(ctx, req) +} + +// Delete calls stabilityai.platformapis.project.v1.ProjectService.Delete. +func (c *projectServiceClient) Delete(ctx context.Context, req *connect.Request[v1.DeleteProjectRequest]) (*connect.Response[v1.Project], error) { + return c.delete.CallUnary(ctx, req) +} + +// TagAssets calls stabilityai.platformapis.project.v1.ProjectService.TagAssets. +func (c *projectServiceClient) TagAssets(ctx context.Context, req *connect.Request[v1.TagAssetsRequest]) (*connect.Response[v1.TagAssetsResponse], error) { + return c.tagAssets.CallUnary(ctx, req) +} + +// UntagAssets calls stabilityai.platformapis.project.v1.ProjectService.UntagAssets. +func (c *projectServiceClient) UntagAssets(ctx context.Context, req *connect.Request[v1.UntagAssetsRequest]) (*connect.Response[v1.UntagAssetsResponse], error) { + return c.untagAssets.CallUnary(ctx, req) +} + +// QueryAssets calls stabilityai.platformapis.project.v1.ProjectService.QueryAssets. +func (c *projectServiceClient) QueryAssets(ctx context.Context, req *connect.Request[v1.QueryAssetsRequest]) (*connect.Response[v1.QueryAssetsResponse], error) { + return c.queryAssets.CallUnary(ctx, req) +} + +// DeleteAssets calls stabilityai.platformapis.project.v1.ProjectService.DeleteAssets. +func (c *projectServiceClient) DeleteAssets(ctx context.Context, req *connect.Request[v1.DeleteAssetsRequest]) (*connect.Response[v1.DeleteAssetsResponse], error) { + return c.deleteAssets.CallUnary(ctx, req) +} + +// ProjectServiceHandler is an implementation of the +// stabilityai.platformapis.project.v1.ProjectService service. +type ProjectServiceHandler interface { + // Create a new project if it does not exist + Create(context.Context, *connect.Request[v1.CreateProjectRequest]) (*connect.Response[v1.Project], error) + // Update an existing project + Update(context.Context, *connect.Request[v1.UpdateProjectRequest]) (*connect.Response[v1.Project], error) + // List all the projects for an organization + List(context.Context, *connect.Request[v1.ListProjectRequest], *connect.ServerStream[v1.Project]) error + // Get a project + Get(context.Context, *connect.Request[v1.GetProjectRequest]) (*connect.Response[v1.Project], error) + // Delete a project + Delete(context.Context, *connect.Request[v1.DeleteProjectRequest]) (*connect.Response[v1.Project], error) + // Add or remove tags from an asset + TagAssets(context.Context, *connect.Request[v1.TagAssetsRequest]) (*connect.Response[v1.TagAssetsResponse], error) + UntagAssets(context.Context, *connect.Request[v1.UntagAssetsRequest]) (*connect.Response[v1.UntagAssetsResponse], error) + // Query the assets of a project, with additional filtering + QueryAssets(context.Context, *connect.Request[v1.QueryAssetsRequest]) (*connect.Response[v1.QueryAssetsResponse], error) + // Delete one or more assets of a project + DeleteAssets(context.Context, *connect.Request[v1.DeleteAssetsRequest]) (*connect.Response[v1.DeleteAssetsResponse], error) +} + +// NewProjectServiceHandler builds an HTTP handler from the service implementation. It returns the +// path on which to mount the handler and the handler itself. +// +// By default, handlers support the Connect, gRPC, and gRPC-Web protocols with the binary Protobuf +// and JSON codecs. They also support gzip compression. +func NewProjectServiceHandler(svc ProjectServiceHandler, opts ...connect.HandlerOption) (string, http.Handler) { + projectServiceCreateHandler := connect.NewUnaryHandler( + ProjectServiceCreateProcedure, + svc.Create, + opts..., + ) + projectServiceUpdateHandler := connect.NewUnaryHandler( + ProjectServiceUpdateProcedure, + svc.Update, + opts..., + ) + projectServiceListHandler := connect.NewServerStreamHandler( + ProjectServiceListProcedure, + svc.List, + opts..., + ) + projectServiceGetHandler := connect.NewUnaryHandler( + ProjectServiceGetProcedure, + svc.Get, + opts..., + ) + projectServiceDeleteHandler := connect.NewUnaryHandler( + ProjectServiceDeleteProcedure, + svc.Delete, + opts..., + ) + projectServiceTagAssetsHandler := connect.NewUnaryHandler( + ProjectServiceTagAssetsProcedure, + svc.TagAssets, + opts..., + ) + projectServiceUntagAssetsHandler := connect.NewUnaryHandler( + ProjectServiceUntagAssetsProcedure, + svc.UntagAssets, + opts..., + ) + projectServiceQueryAssetsHandler := connect.NewUnaryHandler( + ProjectServiceQueryAssetsProcedure, + svc.QueryAssets, + opts..., + ) + projectServiceDeleteAssetsHandler := connect.NewUnaryHandler( + ProjectServiceDeleteAssetsProcedure, + svc.DeleteAssets, + opts..., + ) + return "/stabilityai.platformapis.project.v1.ProjectService/", http.HandlerFunc(func(w http.ResponseWriter, r *http.Request) { + switch r.URL.Path { + case ProjectServiceCreateProcedure: + projectServiceCreateHandler.ServeHTTP(w, r) + case ProjectServiceUpdateProcedure: + projectServiceUpdateHandler.ServeHTTP(w, r) + case ProjectServiceListProcedure: + projectServiceListHandler.ServeHTTP(w, r) + case ProjectServiceGetProcedure: + projectServiceGetHandler.ServeHTTP(w, r) + case ProjectServiceDeleteProcedure: + projectServiceDeleteHandler.ServeHTTP(w, r) + case ProjectServiceTagAssetsProcedure: + projectServiceTagAssetsHandler.ServeHTTP(w, r) + case ProjectServiceUntagAssetsProcedure: + projectServiceUntagAssetsHandler.ServeHTTP(w, r) + case ProjectServiceQueryAssetsProcedure: + projectServiceQueryAssetsHandler.ServeHTTP(w, r) + case ProjectServiceDeleteAssetsProcedure: + projectServiceDeleteAssetsHandler.ServeHTTP(w, r) + default: + http.NotFound(w, r) + } + }) +} + +// UnimplementedProjectServiceHandler returns CodeUnimplemented from all methods. +type UnimplementedProjectServiceHandler struct{} + +func (UnimplementedProjectServiceHandler) Create(context.Context, *connect.Request[v1.CreateProjectRequest]) (*connect.Response[v1.Project], error) { + return nil, connect.NewError(connect.CodeUnimplemented, errors.New("stabilityai.platformapis.project.v1.ProjectService.Create is not implemented")) +} + +func (UnimplementedProjectServiceHandler) Update(context.Context, *connect.Request[v1.UpdateProjectRequest]) (*connect.Response[v1.Project], error) { + return nil, connect.NewError(connect.CodeUnimplemented, errors.New("stabilityai.platformapis.project.v1.ProjectService.Update is not implemented")) +} + +func (UnimplementedProjectServiceHandler) List(context.Context, *connect.Request[v1.ListProjectRequest], *connect.ServerStream[v1.Project]) error { + return connect.NewError(connect.CodeUnimplemented, errors.New("stabilityai.platformapis.project.v1.ProjectService.List is not implemented")) +} + +func (UnimplementedProjectServiceHandler) Get(context.Context, *connect.Request[v1.GetProjectRequest]) (*connect.Response[v1.Project], error) { + return nil, connect.NewError(connect.CodeUnimplemented, errors.New("stabilityai.platformapis.project.v1.ProjectService.Get is not implemented")) +} + +func (UnimplementedProjectServiceHandler) Delete(context.Context, *connect.Request[v1.DeleteProjectRequest]) (*connect.Response[v1.Project], error) { + return nil, connect.NewError(connect.CodeUnimplemented, errors.New("stabilityai.platformapis.project.v1.ProjectService.Delete is not implemented")) +} + +func (UnimplementedProjectServiceHandler) TagAssets(context.Context, *connect.Request[v1.TagAssetsRequest]) (*connect.Response[v1.TagAssetsResponse], error) { + return nil, connect.NewError(connect.CodeUnimplemented, errors.New("stabilityai.platformapis.project.v1.ProjectService.TagAssets is not implemented")) +} + +func (UnimplementedProjectServiceHandler) UntagAssets(context.Context, *connect.Request[v1.UntagAssetsRequest]) (*connect.Response[v1.UntagAssetsResponse], error) { + return nil, connect.NewError(connect.CodeUnimplemented, errors.New("stabilityai.platformapis.project.v1.ProjectService.UntagAssets is not implemented")) +} + +func (UnimplementedProjectServiceHandler) QueryAssets(context.Context, *connect.Request[v1.QueryAssetsRequest]) (*connect.Response[v1.QueryAssetsResponse], error) { + return nil, connect.NewError(connect.CodeUnimplemented, errors.New("stabilityai.platformapis.project.v1.ProjectService.QueryAssets is not implemented")) +} + +func (UnimplementedProjectServiceHandler) DeleteAssets(context.Context, *connect.Request[v1.DeleteAssetsRequest]) (*connect.Response[v1.DeleteAssetsResponse], error) { + return nil, connect.NewError(connect.CodeUnimplemented, errors.New("stabilityai.platformapis.project.v1.ProjectService.DeleteAssets is not implemented")) +} diff --git a/src/stability_api/tensors/tensors.pb.go b/src/stability_api/tensors/tensors.pb.go new file mode 100644 index 0000000..cfcaa29 --- /dev/null +++ b/src/stability_api/tensors/tensors.pb.go @@ -0,0 +1,618 @@ +// Code generated by protoc-gen-go. DO NOT EDIT. +// versions: +// protoc-gen-go v1.31.0 +// protoc (unknown) +// source: stability_api/tensors/tensors.proto + +package tensors + +import ( + protoreflect "google.golang.org/protobuf/reflect/protoreflect" + protoimpl "google.golang.org/protobuf/runtime/protoimpl" + reflect "reflect" + sync "sync" +) + +const ( + // Verify that this generated code is sufficiently up-to-date. + _ = protoimpl.EnforceVersion(20 - protoimpl.MinVersion) + // Verify that runtime/protoimpl is sufficiently up-to-date. + _ = protoimpl.EnforceVersion(protoimpl.MaxVersion - 20) +) + +type Dtype int32 + +const ( + Dtype_DT_INVALID Dtype = 0 + Dtype_DT_FLOAT32 Dtype = 1 + Dtype_DT_FLOAT64 Dtype = 2 + Dtype_DT_FLOAT16 Dtype = 3 + Dtype_DT_BFLOAT16 Dtype = 4 + Dtype_DT_COMPLEX32 Dtype = 5 + Dtype_DT_COMPLEX64 Dtype = 6 + Dtype_DT_COMPLEX128 Dtype = 7 + Dtype_DT_UINT8 Dtype = 8 + Dtype_DT_INT8 Dtype = 9 + Dtype_DT_INT16 Dtype = 10 + Dtype_DT_INT32 Dtype = 11 + Dtype_DT_INT64 Dtype = 12 + Dtype_DT_BOOL Dtype = 13 + Dtype_DT_QUINT8 Dtype = 14 + Dtype_DT_QINT8 Dtype = 15 + Dtype_DT_QINT32 Dtype = 16 + Dtype_DT_QUINT4_2 Dtype = 17 +) + +// Enum value maps for Dtype. +var ( + Dtype_name = map[int32]string{ + 0: "DT_INVALID", + 1: "DT_FLOAT32", + 2: "DT_FLOAT64", + 3: "DT_FLOAT16", + 4: "DT_BFLOAT16", + 5: "DT_COMPLEX32", + 6: "DT_COMPLEX64", + 7: "DT_COMPLEX128", + 8: "DT_UINT8", + 9: "DT_INT8", + 10: "DT_INT16", + 11: "DT_INT32", + 12: "DT_INT64", + 13: "DT_BOOL", + 14: "DT_QUINT8", + 15: "DT_QINT8", + 16: "DT_QINT32", + 17: "DT_QUINT4_2", + } + Dtype_value = map[string]int32{ + "DT_INVALID": 0, + "DT_FLOAT32": 1, + "DT_FLOAT64": 2, + "DT_FLOAT16": 3, + "DT_BFLOAT16": 4, + "DT_COMPLEX32": 5, + "DT_COMPLEX64": 6, + "DT_COMPLEX128": 7, + "DT_UINT8": 8, + "DT_INT8": 9, + "DT_INT16": 10, + "DT_INT32": 11, + "DT_INT64": 12, + "DT_BOOL": 13, + "DT_QUINT8": 14, + "DT_QINT8": 15, + "DT_QINT32": 16, + "DT_QUINT4_2": 17, + } +) + +func (x Dtype) Enum() *Dtype { + p := new(Dtype) + *p = x + return p +} + +func (x Dtype) String() string { + return protoimpl.X.EnumStringOf(x.Descriptor(), protoreflect.EnumNumber(x)) +} + +func (Dtype) Descriptor() protoreflect.EnumDescriptor { + return file_stability_api_tensors_tensors_proto_enumTypes[0].Descriptor() +} + +func (Dtype) Type() protoreflect.EnumType { + return &file_stability_api_tensors_tensors_proto_enumTypes[0] +} + +func (x Dtype) Number() protoreflect.EnumNumber { + return protoreflect.EnumNumber(x) +} + +// Deprecated: Use Dtype.Descriptor instead. +func (Dtype) EnumDescriptor() ([]byte, []int) { + return file_stability_api_tensors_tensors_proto_rawDescGZIP(), []int{0} +} + +type AttributeType int32 + +const ( + AttributeType_AT_PARAMETER AttributeType = 0 + AttributeType_AT_BUFFER AttributeType = 1 +) + +// Enum value maps for AttributeType. +var ( + AttributeType_name = map[int32]string{ + 0: "AT_PARAMETER", + 1: "AT_BUFFER", + } + AttributeType_value = map[string]int32{ + "AT_PARAMETER": 0, + "AT_BUFFER": 1, + } +) + +func (x AttributeType) Enum() *AttributeType { + p := new(AttributeType) + *p = x + return p +} + +func (x AttributeType) String() string { + return protoimpl.X.EnumStringOf(x.Descriptor(), protoreflect.EnumNumber(x)) +} + +func (AttributeType) Descriptor() protoreflect.EnumDescriptor { + return file_stability_api_tensors_tensors_proto_enumTypes[1].Descriptor() +} + +func (AttributeType) Type() protoreflect.EnumType { + return &file_stability_api_tensors_tensors_proto_enumTypes[1] +} + +func (x AttributeType) Number() protoreflect.EnumNumber { + return protoreflect.EnumNumber(x) +} + +// Deprecated: Use AttributeType.Descriptor instead. +func (AttributeType) EnumDescriptor() ([]byte, []int) { + return file_stability_api_tensors_tensors_proto_rawDescGZIP(), []int{1} +} + +type Tensor struct { + state protoimpl.MessageState + sizeCache protoimpl.SizeCache + unknownFields protoimpl.UnknownFields + + Dtype Dtype `protobuf:"varint,1,opt,name=dtype,proto3,enum=tensors.Dtype" json:"dtype,omitempty"` + Shape []int64 `protobuf:"varint,2,rep,packed,name=shape,proto3" json:"shape,omitempty"` + Data []byte `protobuf:"bytes,3,opt,name=data,proto3" json:"data,omitempty"` + AttrType *AttributeType `protobuf:"varint,4,opt,name=attr_type,json=attrType,proto3,enum=tensors.AttributeType,oneof" json:"attr_type,omitempty"` +} + +func (x *Tensor) Reset() { + *x = Tensor{} + if protoimpl.UnsafeEnabled { + mi := &file_stability_api_tensors_tensors_proto_msgTypes[0] + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + ms.StoreMessageInfo(mi) + } +} + +func (x *Tensor) String() string { + return protoimpl.X.MessageStringOf(x) +} + +func (*Tensor) ProtoMessage() {} + +func (x *Tensor) ProtoReflect() protoreflect.Message { + mi := &file_stability_api_tensors_tensors_proto_msgTypes[0] + if protoimpl.UnsafeEnabled && x != nil { + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + if ms.LoadMessageInfo() == nil { + ms.StoreMessageInfo(mi) + } + return ms + } + return mi.MessageOf(x) +} + +// Deprecated: Use Tensor.ProtoReflect.Descriptor instead. +func (*Tensor) Descriptor() ([]byte, []int) { + return file_stability_api_tensors_tensors_proto_rawDescGZIP(), []int{0} +} + +func (x *Tensor) GetDtype() Dtype { + if x != nil { + return x.Dtype + } + return Dtype_DT_INVALID +} + +func (x *Tensor) GetShape() []int64 { + if x != nil { + return x.Shape + } + return nil +} + +func (x *Tensor) GetData() []byte { + if x != nil { + return x.Data + } + return nil +} + +func (x *Tensor) GetAttrType() AttributeType { + if x != nil && x.AttrType != nil { + return *x.AttrType + } + return AttributeType_AT_PARAMETER +} + +type Attribute struct { + state protoimpl.MessageState + sizeCache protoimpl.SizeCache + unknownFields protoimpl.UnknownFields + + Name string `protobuf:"bytes,1,opt,name=name,proto3" json:"name,omitempty"` + // Types that are assignable to Value: + // + // *Attribute_Module + // *Attribute_Tensor + // *Attribute_String_ + // *Attribute_Int64 + // *Attribute_Float + // *Attribute_Bool + Value isAttribute_Value `protobuf_oneof:"value"` +} + +func (x *Attribute) Reset() { + *x = Attribute{} + if protoimpl.UnsafeEnabled { + mi := &file_stability_api_tensors_tensors_proto_msgTypes[1] + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + ms.StoreMessageInfo(mi) + } +} + +func (x *Attribute) String() string { + return protoimpl.X.MessageStringOf(x) +} + +func (*Attribute) ProtoMessage() {} + +func (x *Attribute) ProtoReflect() protoreflect.Message { + mi := &file_stability_api_tensors_tensors_proto_msgTypes[1] + if protoimpl.UnsafeEnabled && x != nil { + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + if ms.LoadMessageInfo() == nil { + ms.StoreMessageInfo(mi) + } + return ms + } + return mi.MessageOf(x) +} + +// Deprecated: Use Attribute.ProtoReflect.Descriptor instead. +func (*Attribute) Descriptor() ([]byte, []int) { + return file_stability_api_tensors_tensors_proto_rawDescGZIP(), []int{1} +} + +func (x *Attribute) GetName() string { + if x != nil { + return x.Name + } + return "" +} + +func (m *Attribute) GetValue() isAttribute_Value { + if m != nil { + return m.Value + } + return nil +} + +func (x *Attribute) GetModule() *Module { + if x, ok := x.GetValue().(*Attribute_Module); ok { + return x.Module + } + return nil +} + +func (x *Attribute) GetTensor() *Tensor { + if x, ok := x.GetValue().(*Attribute_Tensor); ok { + return x.Tensor + } + return nil +} + +func (x *Attribute) GetString_() string { + if x, ok := x.GetValue().(*Attribute_String_); ok { + return x.String_ + } + return "" +} + +func (x *Attribute) GetInt64() int64 { + if x, ok := x.GetValue().(*Attribute_Int64); ok { + return x.Int64 + } + return 0 +} + +func (x *Attribute) GetFloat() float32 { + if x, ok := x.GetValue().(*Attribute_Float); ok { + return x.Float + } + return 0 +} + +func (x *Attribute) GetBool() bool { + if x, ok := x.GetValue().(*Attribute_Bool); ok { + return x.Bool + } + return false +} + +type isAttribute_Value interface { + isAttribute_Value() +} + +type Attribute_Module struct { + Module *Module `protobuf:"bytes,3,opt,name=module,proto3,oneof"` +} + +type Attribute_Tensor struct { + Tensor *Tensor `protobuf:"bytes,4,opt,name=tensor,proto3,oneof"` +} + +type Attribute_String_ struct { + String_ string `protobuf:"bytes,5,opt,name=string,proto3,oneof"` +} + +type Attribute_Int64 struct { + Int64 int64 `protobuf:"varint,6,opt,name=int64,proto3,oneof"` +} + +type Attribute_Float struct { + Float float32 `protobuf:"fixed32,7,opt,name=float,proto3,oneof"` +} + +type Attribute_Bool struct { + Bool bool `protobuf:"varint,8,opt,name=bool,proto3,oneof"` +} + +func (*Attribute_Module) isAttribute_Value() {} + +func (*Attribute_Tensor) isAttribute_Value() {} + +func (*Attribute_String_) isAttribute_Value() {} + +func (*Attribute_Int64) isAttribute_Value() {} + +func (*Attribute_Float) isAttribute_Value() {} + +func (*Attribute_Bool) isAttribute_Value() {} + +type Module struct { + state protoimpl.MessageState + sizeCache protoimpl.SizeCache + unknownFields protoimpl.UnknownFields + + Name string `protobuf:"bytes,1,opt,name=name,proto3" json:"name,omitempty"` + Names []string `protobuf:"bytes,2,rep,name=names,proto3" json:"names,omitempty"` + Attributes []*Attribute `protobuf:"bytes,3,rep,name=attributes,proto3" json:"attributes,omitempty"` +} + +func (x *Module) Reset() { + *x = Module{} + if protoimpl.UnsafeEnabled { + mi := &file_stability_api_tensors_tensors_proto_msgTypes[2] + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + ms.StoreMessageInfo(mi) + } +} + +func (x *Module) String() string { + return protoimpl.X.MessageStringOf(x) +} + +func (*Module) ProtoMessage() {} + +func (x *Module) ProtoReflect() protoreflect.Message { + mi := &file_stability_api_tensors_tensors_proto_msgTypes[2] + if protoimpl.UnsafeEnabled && x != nil { + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + if ms.LoadMessageInfo() == nil { + ms.StoreMessageInfo(mi) + } + return ms + } + return mi.MessageOf(x) +} + +// Deprecated: Use Module.ProtoReflect.Descriptor instead. +func (*Module) Descriptor() ([]byte, []int) { + return file_stability_api_tensors_tensors_proto_rawDescGZIP(), []int{2} +} + +func (x *Module) GetName() string { + if x != nil { + return x.Name + } + return "" +} + +func (x *Module) GetNames() []string { + if x != nil { + return x.Names + } + return nil +} + +func (x *Module) GetAttributes() []*Attribute { + if x != nil { + return x.Attributes + } + return nil +} + +var File_stability_api_tensors_tensors_proto protoreflect.FileDescriptor + +var file_stability_api_tensors_tensors_proto_rawDesc = []byte{ + 0x0a, 0x23, 0x73, 0x74, 0x61, 0x62, 0x69, 0x6c, 0x69, 0x74, 0x79, 0x5f, 0x61, 0x70, 0x69, 0x2f, + 0x74, 0x65, 0x6e, 0x73, 0x6f, 0x72, 0x73, 0x2f, 0x74, 0x65, 0x6e, 0x73, 0x6f, 0x72, 0x73, 0x2e, + 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x12, 0x07, 0x74, 0x65, 0x6e, 0x73, 0x6f, 0x72, 0x73, 0x22, 0xa0, + 0x01, 0x0a, 0x06, 0x54, 0x65, 0x6e, 0x73, 0x6f, 0x72, 0x12, 0x24, 0x0a, 0x05, 0x64, 0x74, 0x79, + 0x70, 0x65, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0e, 0x32, 0x0e, 0x2e, 0x74, 0x65, 0x6e, 0x73, 0x6f, + 0x72, 0x73, 0x2e, 0x44, 0x74, 0x79, 0x70, 0x65, 0x52, 0x05, 0x64, 0x74, 0x79, 0x70, 0x65, 0x12, + 0x14, 0x0a, 0x05, 0x73, 0x68, 0x61, 0x70, 0x65, 0x18, 0x02, 0x20, 0x03, 0x28, 0x03, 0x52, 0x05, + 0x73, 0x68, 0x61, 0x70, 0x65, 0x12, 0x12, 0x0a, 0x04, 0x64, 0x61, 0x74, 0x61, 0x18, 0x03, 0x20, + 0x01, 0x28, 0x0c, 0x52, 0x04, 0x64, 0x61, 0x74, 0x61, 0x12, 0x38, 0x0a, 0x09, 0x61, 0x74, 0x74, + 0x72, 0x5f, 0x74, 0x79, 0x70, 0x65, 0x18, 0x04, 0x20, 0x01, 0x28, 0x0e, 0x32, 0x16, 0x2e, 0x74, + 0x65, 0x6e, 0x73, 0x6f, 0x72, 0x73, 0x2e, 0x41, 0x74, 0x74, 0x72, 0x69, 0x62, 0x75, 0x74, 0x65, + 0x54, 0x79, 0x70, 0x65, 0x48, 0x00, 0x52, 0x08, 0x61, 0x74, 0x74, 0x72, 0x54, 0x79, 0x70, 0x65, + 0x88, 0x01, 0x01, 0x42, 0x0c, 0x0a, 0x0a, 0x5f, 0x61, 0x74, 0x74, 0x72, 0x5f, 0x74, 0x79, 0x70, + 0x65, 0x22, 0xde, 0x01, 0x0a, 0x09, 0x41, 0x74, 0x74, 0x72, 0x69, 0x62, 0x75, 0x74, 0x65, 0x12, + 0x12, 0x0a, 0x04, 0x6e, 0x61, 0x6d, 0x65, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x04, 0x6e, + 0x61, 0x6d, 0x65, 0x12, 0x29, 0x0a, 0x06, 0x6d, 0x6f, 0x64, 0x75, 0x6c, 0x65, 0x18, 0x03, 0x20, + 0x01, 0x28, 0x0b, 0x32, 0x0f, 0x2e, 0x74, 0x65, 0x6e, 0x73, 0x6f, 0x72, 0x73, 0x2e, 0x4d, 0x6f, + 0x64, 0x75, 0x6c, 0x65, 0x48, 0x00, 0x52, 0x06, 0x6d, 0x6f, 0x64, 0x75, 0x6c, 0x65, 0x12, 0x29, + 0x0a, 0x06, 0x74, 0x65, 0x6e, 0x73, 0x6f, 0x72, 0x18, 0x04, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x0f, + 0x2e, 0x74, 0x65, 0x6e, 0x73, 0x6f, 0x72, 0x73, 0x2e, 0x54, 0x65, 0x6e, 0x73, 0x6f, 0x72, 0x48, + 0x00, 0x52, 0x06, 0x74, 0x65, 0x6e, 0x73, 0x6f, 0x72, 0x12, 0x18, 0x0a, 0x06, 0x73, 0x74, 0x72, + 0x69, 0x6e, 0x67, 0x18, 0x05, 0x20, 0x01, 0x28, 0x09, 0x48, 0x00, 0x52, 0x06, 0x73, 0x74, 0x72, + 0x69, 0x6e, 0x67, 0x12, 0x16, 0x0a, 0x05, 0x69, 0x6e, 0x74, 0x36, 0x34, 0x18, 0x06, 0x20, 0x01, + 0x28, 0x03, 0x48, 0x00, 0x52, 0x05, 0x69, 0x6e, 0x74, 0x36, 0x34, 0x12, 0x16, 0x0a, 0x05, 0x66, + 0x6c, 0x6f, 0x61, 0x74, 0x18, 0x07, 0x20, 0x01, 0x28, 0x02, 0x48, 0x00, 0x52, 0x05, 0x66, 0x6c, + 0x6f, 0x61, 0x74, 0x12, 0x14, 0x0a, 0x04, 0x62, 0x6f, 0x6f, 0x6c, 0x18, 0x08, 0x20, 0x01, 0x28, + 0x08, 0x48, 0x00, 0x52, 0x04, 0x62, 0x6f, 0x6f, 0x6c, 0x42, 0x07, 0x0a, 0x05, 0x76, 0x61, 0x6c, + 0x75, 0x65, 0x22, 0x66, 0x0a, 0x06, 0x4d, 0x6f, 0x64, 0x75, 0x6c, 0x65, 0x12, 0x12, 0x0a, 0x04, + 0x6e, 0x61, 0x6d, 0x65, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x04, 0x6e, 0x61, 0x6d, 0x65, + 0x12, 0x14, 0x0a, 0x05, 0x6e, 0x61, 0x6d, 0x65, 0x73, 0x18, 0x02, 0x20, 0x03, 0x28, 0x09, 0x52, + 0x05, 0x6e, 0x61, 0x6d, 0x65, 0x73, 0x12, 0x32, 0x0a, 0x0a, 0x61, 0x74, 0x74, 0x72, 0x69, 0x62, + 0x75, 0x74, 0x65, 0x73, 0x18, 0x03, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x12, 0x2e, 0x74, 0x65, 0x6e, + 0x73, 0x6f, 0x72, 0x73, 0x2e, 0x41, 0x74, 0x74, 0x72, 0x69, 0x62, 0x75, 0x74, 0x65, 0x52, 0x0a, + 0x61, 0x74, 0x74, 0x72, 0x69, 0x62, 0x75, 0x74, 0x65, 0x73, 0x2a, 0x9e, 0x02, 0x0a, 0x05, 0x44, + 0x74, 0x79, 0x70, 0x65, 0x12, 0x0e, 0x0a, 0x0a, 0x44, 0x54, 0x5f, 0x49, 0x4e, 0x56, 0x41, 0x4c, + 0x49, 0x44, 0x10, 0x00, 0x12, 0x0e, 0x0a, 0x0a, 0x44, 0x54, 0x5f, 0x46, 0x4c, 0x4f, 0x41, 0x54, + 0x33, 0x32, 0x10, 0x01, 0x12, 0x0e, 0x0a, 0x0a, 0x44, 0x54, 0x5f, 0x46, 0x4c, 0x4f, 0x41, 0x54, + 0x36, 0x34, 0x10, 0x02, 0x12, 0x0e, 0x0a, 0x0a, 0x44, 0x54, 0x5f, 0x46, 0x4c, 0x4f, 0x41, 0x54, + 0x31, 0x36, 0x10, 0x03, 0x12, 0x0f, 0x0a, 0x0b, 0x44, 0x54, 0x5f, 0x42, 0x46, 0x4c, 0x4f, 0x41, + 0x54, 0x31, 0x36, 0x10, 0x04, 0x12, 0x10, 0x0a, 0x0c, 0x44, 0x54, 0x5f, 0x43, 0x4f, 0x4d, 0x50, + 0x4c, 0x45, 0x58, 0x33, 0x32, 0x10, 0x05, 0x12, 0x10, 0x0a, 0x0c, 0x44, 0x54, 0x5f, 0x43, 0x4f, + 0x4d, 0x50, 0x4c, 0x45, 0x58, 0x36, 0x34, 0x10, 0x06, 0x12, 0x11, 0x0a, 0x0d, 0x44, 0x54, 0x5f, + 0x43, 0x4f, 0x4d, 0x50, 0x4c, 0x45, 0x58, 0x31, 0x32, 0x38, 0x10, 0x07, 0x12, 0x0c, 0x0a, 0x08, + 0x44, 0x54, 0x5f, 0x55, 0x49, 0x4e, 0x54, 0x38, 0x10, 0x08, 0x12, 0x0b, 0x0a, 0x07, 0x44, 0x54, + 0x5f, 0x49, 0x4e, 0x54, 0x38, 0x10, 0x09, 0x12, 0x0c, 0x0a, 0x08, 0x44, 0x54, 0x5f, 0x49, 0x4e, + 0x54, 0x31, 0x36, 0x10, 0x0a, 0x12, 0x0c, 0x0a, 0x08, 0x44, 0x54, 0x5f, 0x49, 0x4e, 0x54, 0x33, + 0x32, 0x10, 0x0b, 0x12, 0x0c, 0x0a, 0x08, 0x44, 0x54, 0x5f, 0x49, 0x4e, 0x54, 0x36, 0x34, 0x10, + 0x0c, 0x12, 0x0b, 0x0a, 0x07, 0x44, 0x54, 0x5f, 0x42, 0x4f, 0x4f, 0x4c, 0x10, 0x0d, 0x12, 0x0d, + 0x0a, 0x09, 0x44, 0x54, 0x5f, 0x51, 0x55, 0x49, 0x4e, 0x54, 0x38, 0x10, 0x0e, 0x12, 0x0c, 0x0a, + 0x08, 0x44, 0x54, 0x5f, 0x51, 0x49, 0x4e, 0x54, 0x38, 0x10, 0x0f, 0x12, 0x0d, 0x0a, 0x09, 0x44, + 0x54, 0x5f, 0x51, 0x49, 0x4e, 0x54, 0x33, 0x32, 0x10, 0x10, 0x12, 0x0f, 0x0a, 0x0b, 0x44, 0x54, + 0x5f, 0x51, 0x55, 0x49, 0x4e, 0x54, 0x34, 0x5f, 0x32, 0x10, 0x11, 0x2a, 0x30, 0x0a, 0x0d, 0x41, + 0x74, 0x74, 0x72, 0x69, 0x62, 0x75, 0x74, 0x65, 0x54, 0x79, 0x70, 0x65, 0x12, 0x10, 0x0a, 0x0c, + 0x41, 0x54, 0x5f, 0x50, 0x41, 0x52, 0x41, 0x4d, 0x45, 0x54, 0x45, 0x52, 0x10, 0x00, 0x12, 0x0d, + 0x0a, 0x09, 0x41, 0x54, 0x5f, 0x42, 0x55, 0x46, 0x46, 0x45, 0x52, 0x10, 0x01, 0x42, 0x99, 0x01, + 0x0a, 0x0b, 0x63, 0x6f, 0x6d, 0x2e, 0x74, 0x65, 0x6e, 0x73, 0x6f, 0x72, 0x73, 0x42, 0x0c, 0x54, + 0x65, 0x6e, 0x73, 0x6f, 0x72, 0x73, 0x50, 0x72, 0x6f, 0x74, 0x6f, 0x50, 0x01, 0x5a, 0x40, 0x67, + 0x69, 0x74, 0x68, 0x75, 0x62, 0x2e, 0x63, 0x6f, 0x6d, 0x2f, 0x73, 0x74, 0x61, 0x62, 0x69, 0x6c, + 0x69, 0x74, 0x79, 0x2d, 0x61, 0x69, 0x2f, 0x61, 0x70, 0x69, 0x2d, 0x69, 0x6e, 0x74, 0x65, 0x72, + 0x66, 0x61, 0x63, 0x65, 0x73, 0x2f, 0x73, 0x72, 0x63, 0x2f, 0x73, 0x74, 0x61, 0x62, 0x69, 0x6c, + 0x69, 0x74, 0x79, 0x5f, 0x61, 0x70, 0x69, 0x2f, 0x74, 0x65, 0x6e, 0x73, 0x6f, 0x72, 0x73, 0xa2, + 0x02, 0x03, 0x54, 0x58, 0x58, 0xaa, 0x02, 0x07, 0x54, 0x65, 0x6e, 0x73, 0x6f, 0x72, 0x73, 0xca, + 0x02, 0x07, 0x54, 0x65, 0x6e, 0x73, 0x6f, 0x72, 0x73, 0xe2, 0x02, 0x13, 0x54, 0x65, 0x6e, 0x73, + 0x6f, 0x72, 0x73, 0x5c, 0x47, 0x50, 0x42, 0x4d, 0x65, 0x74, 0x61, 0x64, 0x61, 0x74, 0x61, 0xea, + 0x02, 0x07, 0x54, 0x65, 0x6e, 0x73, 0x6f, 0x72, 0x73, 0x62, 0x06, 0x70, 0x72, 0x6f, 0x74, 0x6f, + 0x33, +} + +var ( + file_stability_api_tensors_tensors_proto_rawDescOnce sync.Once + file_stability_api_tensors_tensors_proto_rawDescData = file_stability_api_tensors_tensors_proto_rawDesc +) + +func file_stability_api_tensors_tensors_proto_rawDescGZIP() []byte { + file_stability_api_tensors_tensors_proto_rawDescOnce.Do(func() { + file_stability_api_tensors_tensors_proto_rawDescData = protoimpl.X.CompressGZIP(file_stability_api_tensors_tensors_proto_rawDescData) + }) + return file_stability_api_tensors_tensors_proto_rawDescData +} + +var file_stability_api_tensors_tensors_proto_enumTypes = make([]protoimpl.EnumInfo, 2) +var file_stability_api_tensors_tensors_proto_msgTypes = make([]protoimpl.MessageInfo, 3) +var file_stability_api_tensors_tensors_proto_goTypes = []interface{}{ + (Dtype)(0), // 0: tensors.Dtype + (AttributeType)(0), // 1: tensors.AttributeType + (*Tensor)(nil), // 2: tensors.Tensor + (*Attribute)(nil), // 3: tensors.Attribute + (*Module)(nil), // 4: tensors.Module +} +var file_stability_api_tensors_tensors_proto_depIdxs = []int32{ + 0, // 0: tensors.Tensor.dtype:type_name -> tensors.Dtype + 1, // 1: tensors.Tensor.attr_type:type_name -> tensors.AttributeType + 4, // 2: tensors.Attribute.module:type_name -> tensors.Module + 2, // 3: tensors.Attribute.tensor:type_name -> tensors.Tensor + 3, // 4: tensors.Module.attributes:type_name -> tensors.Attribute + 5, // [5:5] is the sub-list for method output_type + 5, // [5:5] is the sub-list for method input_type + 5, // [5:5] is the sub-list for extension type_name + 5, // [5:5] is the sub-list for extension extendee + 0, // [0:5] is the sub-list for field type_name +} + +func init() { file_stability_api_tensors_tensors_proto_init() } +func file_stability_api_tensors_tensors_proto_init() { + if File_stability_api_tensors_tensors_proto != nil { + return + } + if !protoimpl.UnsafeEnabled { + file_stability_api_tensors_tensors_proto_msgTypes[0].Exporter = func(v interface{}, i int) interface{} { + switch v := v.(*Tensor); i { + case 0: + return &v.state + case 1: + return &v.sizeCache + case 2: + return &v.unknownFields + default: + return nil + } + } + file_stability_api_tensors_tensors_proto_msgTypes[1].Exporter = func(v interface{}, i int) interface{} { + switch v := v.(*Attribute); i { + case 0: + return &v.state + case 1: + return &v.sizeCache + case 2: + return &v.unknownFields + default: + return nil + } + } + file_stability_api_tensors_tensors_proto_msgTypes[2].Exporter = func(v interface{}, i int) interface{} { + switch v := v.(*Module); i { + case 0: + return &v.state + case 1: + return &v.sizeCache + case 2: + return &v.unknownFields + default: + return nil + } + } + } + file_stability_api_tensors_tensors_proto_msgTypes[0].OneofWrappers = []interface{}{} + file_stability_api_tensors_tensors_proto_msgTypes[1].OneofWrappers = []interface{}{ + (*Attribute_Module)(nil), + (*Attribute_Tensor)(nil), + (*Attribute_String_)(nil), + (*Attribute_Int64)(nil), + (*Attribute_Float)(nil), + (*Attribute_Bool)(nil), + } + type x struct{} + out := protoimpl.TypeBuilder{ + File: protoimpl.DescBuilder{ + GoPackagePath: reflect.TypeOf(x{}).PkgPath(), + RawDescriptor: file_stability_api_tensors_tensors_proto_rawDesc, + NumEnums: 2, + NumMessages: 3, + NumExtensions: 0, + NumServices: 0, + }, + GoTypes: file_stability_api_tensors_tensors_proto_goTypes, + DependencyIndexes: file_stability_api_tensors_tensors_proto_depIdxs, + EnumInfos: file_stability_api_tensors_tensors_proto_enumTypes, + MessageInfos: file_stability_api_tensors_tensors_proto_msgTypes, + }.Build() + File_stability_api_tensors_tensors_proto = out.File + file_stability_api_tensors_tensors_proto_rawDesc = nil + file_stability_api_tensors_tensors_proto_goTypes = nil + file_stability_api_tensors_tensors_proto_depIdxs = nil +} diff --git a/src/stability_api/tensors/tensors_pb.d.ts b/src/stability_api/tensors/tensors_pb.d.ts new file mode 100644 index 0000000..4504da2 --- /dev/null +++ b/src/stability_api/tensors/tensors_pb.d.ts @@ -0,0 +1,256 @@ +// @generated by protoc-gen-es v1.3.0 +// @generated from file stability_api/tensors/tensors.proto (package tensors, syntax proto3) +/* eslint-disable */ +// @ts-nocheck + +import type { BinaryReadOptions, FieldList, JsonReadOptions, JsonValue, PartialMessage, PlainMessage } from "@bufbuild/protobuf"; +import { Message, proto3 } from "@bufbuild/protobuf"; + +/** + * @generated from enum tensors.Dtype + */ +export declare enum Dtype { + /** + * @generated from enum value: DT_INVALID = 0; + */ + DT_INVALID = 0, + + /** + * @generated from enum value: DT_FLOAT32 = 1; + */ + DT_FLOAT32 = 1, + + /** + * @generated from enum value: DT_FLOAT64 = 2; + */ + DT_FLOAT64 = 2, + + /** + * @generated from enum value: DT_FLOAT16 = 3; + */ + DT_FLOAT16 = 3, + + /** + * @generated from enum value: DT_BFLOAT16 = 4; + */ + DT_BFLOAT16 = 4, + + /** + * @generated from enum value: DT_COMPLEX32 = 5; + */ + DT_COMPLEX32 = 5, + + /** + * @generated from enum value: DT_COMPLEX64 = 6; + */ + DT_COMPLEX64 = 6, + + /** + * @generated from enum value: DT_COMPLEX128 = 7; + */ + DT_COMPLEX128 = 7, + + /** + * @generated from enum value: DT_UINT8 = 8; + */ + DT_UINT8 = 8, + + /** + * @generated from enum value: DT_INT8 = 9; + */ + DT_INT8 = 9, + + /** + * @generated from enum value: DT_INT16 = 10; + */ + DT_INT16 = 10, + + /** + * @generated from enum value: DT_INT32 = 11; + */ + DT_INT32 = 11, + + /** + * @generated from enum value: DT_INT64 = 12; + */ + DT_INT64 = 12, + + /** + * @generated from enum value: DT_BOOL = 13; + */ + DT_BOOL = 13, + + /** + * @generated from enum value: DT_QUINT8 = 14; + */ + DT_QUINT8 = 14, + + /** + * @generated from enum value: DT_QINT8 = 15; + */ + DT_QINT8 = 15, + + /** + * @generated from enum value: DT_QINT32 = 16; + */ + DT_QINT32 = 16, + + /** + * @generated from enum value: DT_QUINT4_2 = 17; + */ + DT_QUINT4_2 = 17, +} + +/** + * @generated from enum tensors.AttributeType + */ +export declare enum AttributeType { + /** + * @generated from enum value: AT_PARAMETER = 0; + */ + AT_PARAMETER = 0, + + /** + * @generated from enum value: AT_BUFFER = 1; + */ + AT_BUFFER = 1, +} + +/** + * @generated from message tensors.Tensor + */ +export declare class Tensor extends Message { + /** + * @generated from field: tensors.Dtype dtype = 1; + */ + dtype: Dtype; + + /** + * @generated from field: repeated int64 shape = 2; + */ + shape: bigint[]; + + /** + * @generated from field: bytes data = 3; + */ + data: Uint8Array; + + /** + * @generated from field: optional tensors.AttributeType attr_type = 4; + */ + attrType?: AttributeType; + + constructor(data?: PartialMessage); + + static readonly runtime: typeof proto3; + static readonly typeName = "tensors.Tensor"; + static readonly fields: FieldList; + + static fromBinary(bytes: Uint8Array, options?: Partial): Tensor; + + static fromJson(jsonValue: JsonValue, options?: Partial): Tensor; + + static fromJsonString(jsonString: string, options?: Partial): Tensor; + + static equals(a: Tensor | PlainMessage | undefined, b: Tensor | PlainMessage | undefined): boolean; +} + +/** + * @generated from message tensors.Attribute + */ +export declare class Attribute extends Message { + /** + * @generated from field: string name = 1; + */ + name: string; + + /** + * @generated from oneof tensors.Attribute.value + */ + value: { + /** + * @generated from field: tensors.Module module = 3; + */ + value: Module; + case: "module"; + } | { + /** + * @generated from field: tensors.Tensor tensor = 4; + */ + value: Tensor; + case: "tensor"; + } | { + /** + * @generated from field: string string = 5; + */ + value: string; + case: "string"; + } | { + /** + * @generated from field: int64 int64 = 6; + */ + value: bigint; + case: "int64"; + } | { + /** + * @generated from field: float float = 7; + */ + value: number; + case: "float"; + } | { + /** + * @generated from field: bool bool = 8; + */ + value: boolean; + case: "bool"; + } | { case: undefined; value?: undefined }; + + constructor(data?: PartialMessage); + + static readonly runtime: typeof proto3; + static readonly typeName = "tensors.Attribute"; + static readonly fields: FieldList; + + static fromBinary(bytes: Uint8Array, options?: Partial): Attribute; + + static fromJson(jsonValue: JsonValue, options?: Partial): Attribute; + + static fromJsonString(jsonString: string, options?: Partial): Attribute; + + static equals(a: Attribute | PlainMessage | undefined, b: Attribute | PlainMessage | undefined): boolean; +} + +/** + * @generated from message tensors.Module + */ +export declare class Module extends Message { + /** + * @generated from field: string name = 1; + */ + name: string; + + /** + * @generated from field: repeated string names = 2; + */ + names: string[]; + + /** + * @generated from field: repeated tensors.Attribute attributes = 3; + */ + attributes: Attribute[]; + + constructor(data?: PartialMessage); + + static readonly runtime: typeof proto3; + static readonly typeName = "tensors.Module"; + static readonly fields: FieldList; + + static fromBinary(bytes: Uint8Array, options?: Partial): Module; + + static fromJson(jsonValue: JsonValue, options?: Partial): Module; + + static fromJsonString(jsonString: string, options?: Partial): Module; + + static equals(a: Module | PlainMessage | undefined, b: Module | PlainMessage | undefined): boolean; +} + diff --git a/src/stability_api/tensors/tensors_pb.js b/src/stability_api/tensors/tensors_pb.js new file mode 100644 index 0000000..ced7130 --- /dev/null +++ b/src/stability_api/tensors/tensors_pb.js @@ -0,0 +1,86 @@ +// @generated by protoc-gen-es v1.3.0 +// @generated from file stability_api/tensors/tensors.proto (package tensors, syntax proto3) +/* eslint-disable */ +// @ts-nocheck + +import { proto3 } from "@bufbuild/protobuf"; + +/** + * @generated from enum tensors.Dtype + */ +export const Dtype = proto3.makeEnum( + "tensors.Dtype", + [ + {no: 0, name: "DT_INVALID"}, + {no: 1, name: "DT_FLOAT32"}, + {no: 2, name: "DT_FLOAT64"}, + {no: 3, name: "DT_FLOAT16"}, + {no: 4, name: "DT_BFLOAT16"}, + {no: 5, name: "DT_COMPLEX32"}, + {no: 6, name: "DT_COMPLEX64"}, + {no: 7, name: "DT_COMPLEX128"}, + {no: 8, name: "DT_UINT8"}, + {no: 9, name: "DT_INT8"}, + {no: 10, name: "DT_INT16"}, + {no: 11, name: "DT_INT32"}, + {no: 12, name: "DT_INT64"}, + {no: 13, name: "DT_BOOL"}, + {no: 14, name: "DT_QUINT8"}, + {no: 15, name: "DT_QINT8"}, + {no: 16, name: "DT_QINT32"}, + {no: 17, name: "DT_QUINT4_2"}, + ], +); + +/** + * @generated from enum tensors.AttributeType + */ +export const AttributeType = proto3.makeEnum( + "tensors.AttributeType", + [ + {no: 0, name: "AT_PARAMETER"}, + {no: 1, name: "AT_BUFFER"}, + ], +); + +/** + * @generated from message tensors.Tensor + */ +export const Tensor = proto3.makeMessageType( + "tensors.Tensor", + () => [ + { no: 1, name: "dtype", kind: "enum", T: proto3.getEnumType(Dtype) }, + { no: 2, name: "shape", kind: "scalar", T: 3 /* ScalarType.INT64 */, repeated: true }, + { no: 3, name: "data", kind: "scalar", T: 12 /* ScalarType.BYTES */ }, + { no: 4, name: "attr_type", kind: "enum", T: proto3.getEnumType(AttributeType), opt: true }, + ], +); + +/** + * @generated from message tensors.Attribute + */ +export const Attribute = proto3.makeMessageType( + "tensors.Attribute", + () => [ + { no: 1, name: "name", kind: "scalar", T: 9 /* ScalarType.STRING */ }, + { no: 3, name: "module", kind: "message", T: Module, oneof: "value" }, + { no: 4, name: "tensor", kind: "message", T: Tensor, oneof: "value" }, + { no: 5, name: "string", kind: "scalar", T: 9 /* ScalarType.STRING */, oneof: "value" }, + { no: 6, name: "int64", kind: "scalar", T: 3 /* ScalarType.INT64 */, oneof: "value" }, + { no: 7, name: "float", kind: "scalar", T: 2 /* ScalarType.FLOAT */, oneof: "value" }, + { no: 8, name: "bool", kind: "scalar", T: 8 /* ScalarType.BOOL */, oneof: "value" }, + ], +); + +/** + * @generated from message tensors.Module + */ +export const Module = proto3.makeMessageType( + "tensors.Module", + () => [ + { no: 1, name: "name", kind: "scalar", T: 9 /* ScalarType.STRING */ }, + { no: 2, name: "names", kind: "scalar", T: 9 /* ScalarType.STRING */, repeated: true }, + { no: 3, name: "attributes", kind: "message", T: Attribute, repeated: true }, + ], +); + diff --git a/src/stability_api/tensors/tensors_pb2.py b/src/stability_api/tensors/tensors_pb2.py new file mode 100644 index 0000000..2b6276e --- /dev/null +++ b/src/stability_api/tensors/tensors_pb2.py @@ -0,0 +1,35 @@ +# -*- coding: utf-8 -*- +# Generated by the protocol buffer compiler. DO NOT EDIT! +# source: stability_api/tensors/tensors.proto +"""Generated protocol buffer code.""" +from google.protobuf import descriptor as _descriptor +from google.protobuf import descriptor_pool as _descriptor_pool +from google.protobuf import symbol_database as _symbol_database +from google.protobuf.internal import builder as _builder +# @@protoc_insertion_point(imports) + +_sym_db = _symbol_database.Default() + + + + +DESCRIPTOR = _descriptor_pool.Default().AddSerializedFile(b'\n#stability_api/tensors/tensors.proto\x12\x07tensors\"\xa0\x01\n\x06Tensor\x12$\n\x05\x64type\x18\x01 \x01(\x0e\x32\x0e.tensors.DtypeR\x05\x64type\x12\x14\n\x05shape\x18\x02 \x03(\x03R\x05shape\x12\x12\n\x04\x64\x61ta\x18\x03 \x01(\x0cR\x04\x64\x61ta\x12\x38\n\tattr_type\x18\x04 \x01(\x0e\x32\x16.tensors.AttributeTypeH\x00R\x08\x61ttrType\x88\x01\x01\x42\x0c\n\n_attr_type\"\xde\x01\n\tAttribute\x12\x12\n\x04name\x18\x01 \x01(\tR\x04name\x12)\n\x06module\x18\x03 \x01(\x0b\x32\x0f.tensors.ModuleH\x00R\x06module\x12)\n\x06tensor\x18\x04 \x01(\x0b\x32\x0f.tensors.TensorH\x00R\x06tensor\x12\x18\n\x06string\x18\x05 \x01(\tH\x00R\x06string\x12\x16\n\x05int64\x18\x06 \x01(\x03H\x00R\x05int64\x12\x16\n\x05\x66loat\x18\x07 \x01(\x02H\x00R\x05\x66loat\x12\x14\n\x04\x62ool\x18\x08 \x01(\x08H\x00R\x04\x62oolB\x07\n\x05value\"f\n\x06Module\x12\x12\n\x04name\x18\x01 \x01(\tR\x04name\x12\x14\n\x05names\x18\x02 \x03(\tR\x05names\x12\x32\n\nattributes\x18\x03 \x03(\x0b\x32\x12.tensors.AttributeR\nattributes*\x9e\x02\n\x05\x44type\x12\x0e\n\nDT_INVALID\x10\x00\x12\x0e\n\nDT_FLOAT32\x10\x01\x12\x0e\n\nDT_FLOAT64\x10\x02\x12\x0e\n\nDT_FLOAT16\x10\x03\x12\x0f\n\x0b\x44T_BFLOAT16\x10\x04\x12\x10\n\x0c\x44T_COMPLEX32\x10\x05\x12\x10\n\x0c\x44T_COMPLEX64\x10\x06\x12\x11\n\rDT_COMPLEX128\x10\x07\x12\x0c\n\x08\x44T_UINT8\x10\x08\x12\x0b\n\x07\x44T_INT8\x10\t\x12\x0c\n\x08\x44T_INT16\x10\n\x12\x0c\n\x08\x44T_INT32\x10\x0b\x12\x0c\n\x08\x44T_INT64\x10\x0c\x12\x0b\n\x07\x44T_BOOL\x10\r\x12\r\n\tDT_QUINT8\x10\x0e\x12\x0c\n\x08\x44T_QINT8\x10\x0f\x12\r\n\tDT_QINT32\x10\x10\x12\x0f\n\x0b\x44T_QUINT4_2\x10\x11*0\n\rAttributeType\x12\x10\n\x0c\x41T_PARAMETER\x10\x00\x12\r\n\tAT_BUFFER\x10\x01\x42\x80\x01\n\x0b\x63om.tensorsB\x0cTensorsProtoP\x01Z\'github.com/coreweave/tensorizer/tensors\xa2\x02\x03TXX\xaa\x02\x07Tensors\xca\x02\x07Tensors\xe2\x02\x13Tensors\\GPBMetadata\xea\x02\x07Tensorsb\x06proto3') + +_globals = globals() +_builder.BuildMessageAndEnumDescriptors(DESCRIPTOR, _globals) +_builder.BuildTopDescriptorsAndMessages(DESCRIPTOR, 'stability_api.tensors.tensors_pb2', _globals) +if _descriptor._USE_C_DESCRIPTORS == False: + + DESCRIPTOR._options = None + DESCRIPTOR._serialized_options = b'\n\013com.tensorsB\014TensorsProtoP\001Z\'github.com/coreweave/tensorizer/tensors\242\002\003TXX\252\002\007Tensors\312\002\007Tensors\342\002\023Tensors\\GPBMetadata\352\002\007Tensors' + _globals['_DTYPE']._serialized_start=541 + _globals['_DTYPE']._serialized_end=827 + _globals['_ATTRIBUTETYPE']._serialized_start=829 + _globals['_ATTRIBUTETYPE']._serialized_end=877 + _globals['_TENSOR']._serialized_start=49 + _globals['_TENSOR']._serialized_end=209 + _globals['_ATTRIBUTE']._serialized_start=212 + _globals['_ATTRIBUTE']._serialized_end=434 + _globals['_MODULE']._serialized_start=436 + _globals['_MODULE']._serialized_end=538 +# @@protoc_insertion_point(module_scope) diff --git a/src/stability_api/tensors/tensors_pb2.pyi b/src/stability_api/tensors/tensors_pb2.pyi new file mode 100644 index 0000000..b2a9039 --- /dev/null +++ b/src/stability_api/tensors/tensors_pb2.pyi @@ -0,0 +1,93 @@ +from google.protobuf.internal import containers as _containers +from google.protobuf.internal import enum_type_wrapper as _enum_type_wrapper +from google.protobuf import descriptor as _descriptor +from google.protobuf import message as _message +from typing import ClassVar as _ClassVar, Iterable as _Iterable, Mapping as _Mapping, Optional as _Optional, Union as _Union + +DESCRIPTOR: _descriptor.FileDescriptor + +class Dtype(int, metaclass=_enum_type_wrapper.EnumTypeWrapper): + __slots__ = [] + DT_INVALID: _ClassVar[Dtype] + DT_FLOAT32: _ClassVar[Dtype] + DT_FLOAT64: _ClassVar[Dtype] + DT_FLOAT16: _ClassVar[Dtype] + DT_BFLOAT16: _ClassVar[Dtype] + DT_COMPLEX32: _ClassVar[Dtype] + DT_COMPLEX64: _ClassVar[Dtype] + DT_COMPLEX128: _ClassVar[Dtype] + DT_UINT8: _ClassVar[Dtype] + DT_INT8: _ClassVar[Dtype] + DT_INT16: _ClassVar[Dtype] + DT_INT32: _ClassVar[Dtype] + DT_INT64: _ClassVar[Dtype] + DT_BOOL: _ClassVar[Dtype] + DT_QUINT8: _ClassVar[Dtype] + DT_QINT8: _ClassVar[Dtype] + DT_QINT32: _ClassVar[Dtype] + DT_QUINT4_2: _ClassVar[Dtype] + +class AttributeType(int, metaclass=_enum_type_wrapper.EnumTypeWrapper): + __slots__ = [] + AT_PARAMETER: _ClassVar[AttributeType] + AT_BUFFER: _ClassVar[AttributeType] +DT_INVALID: Dtype +DT_FLOAT32: Dtype +DT_FLOAT64: Dtype +DT_FLOAT16: Dtype +DT_BFLOAT16: Dtype +DT_COMPLEX32: Dtype +DT_COMPLEX64: Dtype +DT_COMPLEX128: Dtype +DT_UINT8: Dtype +DT_INT8: Dtype +DT_INT16: Dtype +DT_INT32: Dtype +DT_INT64: Dtype +DT_BOOL: Dtype +DT_QUINT8: Dtype +DT_QINT8: Dtype +DT_QINT32: Dtype +DT_QUINT4_2: Dtype +AT_PARAMETER: AttributeType +AT_BUFFER: AttributeType + +class Tensor(_message.Message): + __slots__ = ["dtype", "shape", "data", "attr_type"] + DTYPE_FIELD_NUMBER: _ClassVar[int] + SHAPE_FIELD_NUMBER: _ClassVar[int] + DATA_FIELD_NUMBER: _ClassVar[int] + ATTR_TYPE_FIELD_NUMBER: _ClassVar[int] + dtype: Dtype + shape: _containers.RepeatedScalarFieldContainer[int] + data: bytes + attr_type: AttributeType + def __init__(self, dtype: _Optional[_Union[Dtype, str]] = ..., shape: _Optional[_Iterable[int]] = ..., data: _Optional[bytes] = ..., attr_type: _Optional[_Union[AttributeType, str]] = ...) -> None: ... + +class Attribute(_message.Message): + __slots__ = ["name", "module", "tensor", "string", "int64", "float", "bool"] + NAME_FIELD_NUMBER: _ClassVar[int] + MODULE_FIELD_NUMBER: _ClassVar[int] + TENSOR_FIELD_NUMBER: _ClassVar[int] + STRING_FIELD_NUMBER: _ClassVar[int] + INT64_FIELD_NUMBER: _ClassVar[int] + FLOAT_FIELD_NUMBER: _ClassVar[int] + BOOL_FIELD_NUMBER: _ClassVar[int] + name: str + module: Module + tensor: Tensor + string: str + int64: int + float: float + bool: bool + def __init__(self, name: _Optional[str] = ..., module: _Optional[_Union[Module, _Mapping]] = ..., tensor: _Optional[_Union[Tensor, _Mapping]] = ..., string: _Optional[str] = ..., int64: _Optional[int] = ..., float: _Optional[float] = ..., bool: bool = ...) -> None: ... + +class Module(_message.Message): + __slots__ = ["name", "names", "attributes"] + NAME_FIELD_NUMBER: _ClassVar[int] + NAMES_FIELD_NUMBER: _ClassVar[int] + ATTRIBUTES_FIELD_NUMBER: _ClassVar[int] + name: str + names: _containers.RepeatedScalarFieldContainer[str] + attributes: _containers.RepeatedCompositeFieldContainer[Attribute] + def __init__(self, name: _Optional[str] = ..., names: _Optional[_Iterable[str]] = ..., attributes: _Optional[_Iterable[_Union[Attribute, _Mapping]]] = ...) -> None: ... diff --git a/src/stability_api/tensors/tensors_pb2_grpc.py b/src/stability_api/tensors/tensors_pb2_grpc.py new file mode 100644 index 0000000..2daafff --- /dev/null +++ b/src/stability_api/tensors/tensors_pb2_grpc.py @@ -0,0 +1,4 @@ +# Generated by the gRPC Python protocol compiler plugin. DO NOT EDIT! +"""Client and server classes corresponding to protobuf-defined services.""" +import grpc + diff --git a/src/tensorizer b/src/tensorizer deleted file mode 160000 index 9335202..0000000 --- a/src/tensorizer +++ /dev/null @@ -1 +0,0 @@ -Subproject commit 9335202f0406b32a5becdad27ceedf5601eb0eae diff --git a/update.sh b/update.sh index c6633b6..3a4ab8c 100755 --- a/update.sh +++ b/update.sh @@ -1,3 +1,6 @@ +# This script updates legacy gooseai contracts. +# It currently does not work due to a dependency on `tensorizer`. + # Update the API interfaces generated code files docker build -t api_interfaces .