defmodule GitHub.App.Permissions do @moduledoc """ Provides struct and type for a App.Permissions """ use GitHub.Encoder @type t :: %__MODULE__{ __info__: map, actions: String.t() | nil, administration: String.t() | nil, checks: String.t() | nil, contents: String.t() | nil, deployments: String.t() | nil, environments: String.t() | nil, issues: String.t() | nil, members: String.t() | nil, metadata: String.t() | nil, organization_administration: String.t() | nil, organization_announcement_banners: String.t() | nil, organization_custom_roles: String.t() | nil, organization_hooks: String.t() | nil, organization_packages: String.t() | nil, organization_personal_access_token_requests: String.t() | nil, organization_personal_access_tokens: String.t() | nil, organization_plan: String.t() | nil, organization_projects: String.t() | nil, organization_secrets: String.t() | nil, organization_self_hosted_runners: String.t() | nil, organization_user_blocking: String.t() | nil, packages: String.t() | nil, pages: String.t() | nil, pull_requests: String.t() | nil, repository_hooks: String.t() | nil, repository_projects: String.t() | nil, secret_scanning_alerts: String.t() | nil, secrets: String.t() | nil, security_events: String.t() | nil, single_file: String.t() | nil, statuses: String.t() | nil, team_discussions: String.t() | nil, vulnerability_alerts: String.t() | nil, workflows: String.t() | nil } defstruct [ :__info__, :actions, :administration, :checks, :contents, :deployments, :environments, :issues, :members, :metadata, :organization_administration, :organization_announcement_banners, :organization_custom_roles, :organization_hooks, :organization_packages, :organization_personal_access_token_requests, :organization_personal_access_tokens, :organization_plan, :organization_projects, :organization_secrets, :organization_self_hosted_runners, :organization_user_blocking, :packages, :pages, :pull_requests, :repository_hooks, :repository_projects, :secret_scanning_alerts, :secrets, :security_events, :single_file, :statuses, :team_discussions, :vulnerability_alerts, :workflows ] @doc false @spec __fields__(atom) :: keyword def __fields__(type \\ :t) def __fields__(:t) do [ actions: {:enum, ["read", "write"]}, administration: {:enum, ["read", "write"]}, checks: {:enum, ["read", "write"]}, contents: {:enum, ["read", "write"]}, deployments: {:enum, ["read", "write"]}, environments: {:enum, ["read", "write"]}, issues: {:enum, ["read", "write"]}, members: {:enum, ["read", "write"]}, metadata: {:enum, ["read", "write"]}, organization_administration: {:enum, ["read", "write"]}, organization_announcement_banners: {:enum, ["read", "write"]}, organization_custom_roles: {:enum, ["read", "write"]}, organization_hooks: {:enum, ["read", "write"]}, organization_packages: {:enum, ["read", "write"]}, organization_personal_access_token_requests: {:enum, ["read", "write"]}, organization_personal_access_tokens: {:enum, ["read", "write"]}, organization_plan: {:const, "read"}, organization_projects: {:enum, ["read", "write", "admin"]}, organization_secrets: {:enum, ["read", "write"]}, organization_self_hosted_runners: {:enum, ["read", "write"]}, organization_user_blocking: {:enum, ["read", "write"]}, packages: {:enum, ["read", "write"]}, pages: {:enum, ["read", "write"]}, pull_requests: {:enum, ["read", "write"]}, repository_hooks: {:enum, ["read", "write"]}, repository_projects: {:enum, ["read", "write", "admin"]}, secret_scanning_alerts: {:enum, ["read", "write"]}, secrets: {:enum, ["read", "write"]}, security_events: {:enum, ["read", "write"]}, single_file: {:enum, ["read", "write"]}, statuses: {:enum, ["read", "write"]}, team_discussions: {:enum, ["read", "write"]}, vulnerability_alerts: {:enum, ["read", "write"]}, workflows: {:const, "write"} ] end end