{
  "beans": {},
  "deployers": {},
  "moddas": {
    "Webda/GoogleAuthentication": "lib/google-auth:default"
  },
  "models": {
    "graph": {},
    "tree": {},
    "plurals": {},
    "list": {},
    "reflections": {}
  },
  "schemas": {
    "Webda/BinaryFile": {
      "type": "object",
      "properties": {
        "hash": {
          "type": "string",
          "description": "Will be computed by the service\n\nhash of the content"
        },
        "challenge": {
          "type": "string",
          "description": "Will be computed by the service\n\nhash of the content prefixed by 'WEBDA'"
        },
        "size": {
          "type": "number",
          "description": "Size of the binary"
        },
        "name": {
          "type": "string",
          "description": "Current name"
        },
        "mimetype": {
          "type": "string",
          "description": "Mimetype of the binary"
        },
        "metadata": {
          "description": "Metadatas stored along with the binary"
        },
        "originalname": {
          "type": "string",
          "description": "Original name"
        }
      },
      "required": [
        "mimetype",
        "name",
        "size"
      ],
      "description": "Represent a file to store",
      "$schema": "http://json-schema.org/draft-07/schema#",
      "title": "BinaryFile"
    },
    "Webda/GoogleAuthentication": {
      "type": "object",
      "properties": {
        "type": {
          "type": "string",
          "description": "Type of the service"
        },
        "url": {
          "type": "string",
          "description": "URL to use for expose\n\nThe default value varying based on implementation It should by default be the provider name in lowercase"
        },
        "scope": {
          "type": "array",
          "items": {
            "type": "string"
          },
          "description": "Scope to request on OAuth flow"
        },
        "exposeScope": {
          "type": "boolean",
          "description": "If set to true it will add a ${url}/scope So client can anticipate the requested scope\n\nThis is useful when using the client api to generate token. This way the service can request the wanted scope",
          "default": false
        },
        "authorized_uris": {
          "type": "array",
          "items": {
            "type": "string"
          },
          "description": "List of URIs authorized for redirect post authorization",
          "default": []
        },
        "redirect_uri": {
          "type": "string",
          "description": "Default redirect_uri",
          "default": "${url}/callback"
        },
        "no_referer": {
          "type": "boolean",
          "description": "Allow direct connection without a referer",
          "default": false
        },
        "authenticationService": {
          "type": "string",
          "description": "Name of the authentication service to use if exist",
          "default": "Authentication"
        },
        "client_id": {
          "type": "string",
          "description": "Google Auth Client id"
        },
        "client_secret": {
          "type": "string",
          "description": "Google Auth Client secret"
        },
        "project_id": {
          "type": "string",
          "description": "Google Project ID"
        },
        "access_type": {
          "type": "string",
          "enum": [
            "online",
            "offline"
          ],
          "description": "Type of access for Google token\n\nonline by default"
        },
        "auth_options": {},
        "redirects": {
          "type": "object",
          "properties": {
            "use_referer": {
              "type": "boolean"
            },
            "whitelist": {
              "type": "array",
              "items": {
                "type": "string"
              }
            },
            "defaults": {
              "type": "object",
              "additionalProperties": {
                "type": "string"
              }
            }
          },
          "required": [
            "use_referer",
            "whitelist",
            "defaults"
          ]
        },
        "openapi": {
          "type": "object",
          "additionalProperties": true
        }
      },
      "required": [
        "authenticationService",
        "client_id",
        "client_secret",
        "no_referer",
        "redirects",
        "type"
      ],
      "description": "Credentials to manage Google Auth https://developers.google.com/identity/protocols/oauth2",
      "$schema": "http://json-schema.org/draft-07/schema#",
      "title": "GoogleAuthentication"
    }
  }
}