Safe Haskell | Safe-Inferred |
---|---|
Language | GHC2021 |
GitHub.App.Token.Permissions
Description
Type-safe implementation for requesting AccessToken
permissions
Usage:
- Use a constructor function for a specific permission, each of which only
accepts appropriate values (e.g. you can't ask for
admin
on a permission that only allowsread
orwrite
). - Combine these using
Permissions
Semigroup
instance.
For example:
let permissions =actions
Read
<>checks
Write
generateInstallationTokenScoped
mempty {permissions} creds installationId
Supplying the same permission more than once will take the higher:
checks
Read
<>checks
Write
==checks
Write
Synopsis
- data Permissions
- data Read = Read
- data Write = Write
- data Admin = Admin
- actions :: AsReadWrite a => a -> Permissions
- administration :: AsReadWrite a => a -> Permissions
- checks :: AsReadWrite a => a -> Permissions
- codespaces :: AsReadWrite a => a -> Permissions
- contents :: AsReadWrite a => a -> Permissions
- dependabot_secrets :: AsReadWrite a => a -> Permissions
- deployments :: AsReadWrite a => a -> Permissions
- environments :: AsReadWrite a => a -> Permissions
- issues :: AsReadWrite a => a -> Permissions
- metadata :: AsReadWrite a => a -> Permissions
- packages :: AsReadWrite a => a -> Permissions
- pages :: AsReadWrite a => a -> Permissions
- pull_requests :: AsReadWrite a => a -> Permissions
- repository_custom_properties :: AsReadWrite a => a -> Permissions
- repository_hooks :: AsReadWrite a => a -> Permissions
- repository_projects :: AsReadWriteAdmin a => a -> Permissions
- secret_scanning_alerts :: AsReadWrite p => p -> Permissions
- secrets :: AsReadWrite p => p -> Permissions
- security_events :: AsReadWrite p => p -> Permissions
- single_file :: AsReadWrite p => p -> Permissions
- statuses :: AsReadWrite p => p -> Permissions
- vulnerability_alerts :: AsReadWrite p => p -> Permissions
- workflows :: Permissions
- members :: AsReadWrite p => p -> Permissions
- organization_administration :: AsReadWrite p => p -> Permissions
- organization_custom_roles :: AsReadWrite p => p -> Permissions
- organization_custom_org_roles :: AsReadWrite p => p -> Permissions
- organization_custom_properties :: AsReadWriteAdmin p => p -> Permissions
- organization_copilot_seat_management :: Permissions
- organization_announcement_banners :: AsReadWrite p => p -> Permissions
- organization_events :: Permissions
- organization_hooks :: AsReadWrite p => p -> Permissions
- organization_personal_access_tokens :: AsReadWrite p => p -> Permissions
- organization_personal_access_token_requests :: AsReadWrite p => p -> Permissions
- organization_plan :: Permissions
- organization_projects :: AsReadWriteAdmin p => p -> Permissions
- organization_packages :: AsReadWrite p => p -> Permissions
- organization_secrets :: AsReadWrite p => p -> Permissions
- organization_self_hosted_runners :: AsReadWrite p => p -> Permissions
- organization_user_blocking :: AsReadWrite p => p -> Permissions
- team_discussions :: AsReadWrite p => p -> Permissions
- email_addresses :: AsReadWrite p => p -> Permissions
- followers :: AsReadWrite p => p -> Permissions
- git_ssh_keys :: AsReadWrite p => p -> Permissions
- gpg_keys :: AsReadWrite p => p -> Permissions
- interaction_limits :: AsReadWrite p => p -> Permissions
- profile :: Permissions
- starring :: AsReadWrite p => p -> Permissions
Documentation
data Permissions Source #
Instances
ToJSON Permissions Source # | |
Defined in GitHub.App.Token.Permissions Methods toJSON :: Permissions -> Value # toEncoding :: Permissions -> Encoding # toJSONList :: [Permissions] -> Value # toEncodingList :: [Permissions] -> Encoding # omitField :: Permissions -> Bool # | |
Monoid Permissions Source # | |
Defined in GitHub.App.Token.Permissions Methods mempty :: Permissions # mappend :: Permissions -> Permissions -> Permissions # mconcat :: [Permissions] -> Permissions # | |
Semigroup Permissions Source # | |
Defined in GitHub.App.Token.Permissions Methods (<>) :: Permissions -> Permissions -> Permissions # sconcat :: NonEmpty Permissions -> Permissions # stimes :: Integral b => b -> Permissions -> Permissions # | |
Show Permissions Source # | |
Defined in GitHub.App.Token.Permissions Methods showsPrec :: Int -> Permissions -> ShowS # show :: Permissions -> String # showList :: [Permissions] -> ShowS # | |
Eq Permissions Source # | |
Defined in GitHub.App.Token.Permissions |
actions :: AsReadWrite a => a -> Permissions Source #
administration :: AsReadWrite a => a -> Permissions Source #
checks :: AsReadWrite a => a -> Permissions Source #
codespaces :: AsReadWrite a => a -> Permissions Source #
contents :: AsReadWrite a => a -> Permissions Source #
dependabot_secrets :: AsReadWrite a => a -> Permissions Source #
deployments :: AsReadWrite a => a -> Permissions Source #
environments :: AsReadWrite a => a -> Permissions Source #
issues :: AsReadWrite a => a -> Permissions Source #
metadata :: AsReadWrite a => a -> Permissions Source #
packages :: AsReadWrite a => a -> Permissions Source #
pages :: AsReadWrite a => a -> Permissions Source #
pull_requests :: AsReadWrite a => a -> Permissions Source #
repository_custom_properties :: AsReadWrite a => a -> Permissions Source #
repository_hooks :: AsReadWrite a => a -> Permissions Source #
repository_projects :: AsReadWriteAdmin a => a -> Permissions Source #
secret_scanning_alerts :: AsReadWrite p => p -> Permissions Source #
secrets :: AsReadWrite p => p -> Permissions Source #
security_events :: AsReadWrite p => p -> Permissions Source #
single_file :: AsReadWrite p => p -> Permissions Source #
statuses :: AsReadWrite p => p -> Permissions Source #
vulnerability_alerts :: AsReadWrite p => p -> Permissions Source #
workflows :: Permissions Source #
Only supported permission is Write
members :: AsReadWrite p => p -> Permissions Source #
organization_administration :: AsReadWrite p => p -> Permissions Source #
organization_custom_roles :: AsReadWrite p => p -> Permissions Source #
organization_custom_org_roles :: AsReadWrite p => p -> Permissions Source #
organization_custom_properties :: AsReadWriteAdmin p => p -> Permissions Source #
organization_copilot_seat_management :: Permissions Source #
Only supported permission is Write
organization_announcement_banners :: AsReadWrite p => p -> Permissions Source #
organization_events :: Permissions Source #
Only supported permission is Read
organization_hooks :: AsReadWrite p => p -> Permissions Source #
organization_personal_access_tokens :: AsReadWrite p => p -> Permissions Source #
organization_personal_access_token_requests :: AsReadWrite p => p -> Permissions Source #
organization_plan :: Permissions Source #
Only supported permission is Read
organization_projects :: AsReadWriteAdmin p => p -> Permissions Source #
organization_packages :: AsReadWrite p => p -> Permissions Source #
organization_secrets :: AsReadWrite p => p -> Permissions Source #
organization_self_hosted_runners :: AsReadWrite p => p -> Permissions Source #
organization_user_blocking :: AsReadWrite p => p -> Permissions Source #
team_discussions :: AsReadWrite p => p -> Permissions Source #
email_addresses :: AsReadWrite p => p -> Permissions Source #
followers :: AsReadWrite p => p -> Permissions Source #
git_ssh_keys :: AsReadWrite p => p -> Permissions Source #
gpg_keys :: AsReadWrite p => p -> Permissions Source #
interaction_limits :: AsReadWrite p => p -> Permissions Source #
profile :: Permissions Source #
Only supported permission is Write
starring :: AsReadWrite p => p -> Permissions Source #