Hackage.Security.Client

# Checking for updates

checkForUpdates

data HasUpdates

# Downloading targets

downloadPackage

downloadPackage'

# Access to the Hackage index

data Directory

data DirectoryEntry

getDirectory

data IndexFile

data IndexEntry dec

data IndexCallbacks

withIndex

# Bootstrapping

requiresBootstrap

bootstrap

# Re-exports

# Types

data FileLength

data Hash

data KeyThreshold

data FileInfo

data HashFn

data Hash

# Utility

fileInfo

computeFileInfo

compareTrustedFileInfo

knownFileInfoEqual

fileInfoSHA256

## Re-exports

data Int54

class HasHeader a

data FileVersion

data FileExpires

data Header

## Utility

expiresInDays

expiresNever

isExpired

versionInitial

versionIncrement

# Cache layout

data CacheLayout

cabalCacheLayout

# Repository layout

data IndexLayout

data IndexFile

hackageIndexLayout

## Utility

indexLayoutPkgMetadata

indexLayoutPkgCabal

indexLayoutPkgPrefs

# Repository layout

data RepoLayout

hackageRepoLayout

cabalLocalRepoLayout

# TUF types

data Mirrors

data Mirror

data MirrorContent

## Utility

type MirrorDescription

describeMirror

# Repository

data RepoRoot

type RepoPath

anchorRepoPathLocally

anchorRepoPathRemotely

# Index

data IndexRoot

type IndexPath

# Cache

data CacheRoot

type CachePath

anchorCachePath

# Datatypes

data Root

data RootRoles

data RoleSpec a

# TUF types

data Signed a

data Signatures

data Signature

# Construction and verification

unsigned

withSignatures

withSignatures'

signRendered

verifySignature

# JSON aids

signedFromJSON

verifySignatures

# Avoid interpreting signatures

data UninterpretedSignatures a

data PreSignature

## Utility

fromPreSignature

fromPreSignatures

toPreSignature

toPreSignatures

data Snapshot

# TUF types

data Targets

data Delegations

data DelegationSpec

data Delegation

## Util

targetsLookup

data Timestamp

# Key types

data Ed25519

# Types abstracting over key types

data Key a

data PublicKey a

data PrivateKey a

# Key types in isolation

data KeyType typ

# Hiding key types

somePublicKey

somePublicKeyType

someKeyId

# Operations on keys

publicKey

privateKey

createKey

createKey'

# Key IDs

data KeyId

class HasKeyId key

# Signing

sign

verify

trusted

## We only a few bits from .Repository

data Repository down

class DownloadedFile down

data SomeRemoteError

data LogMessage

# Exceptions

uncheckClientErrors

data VerificationError

type VerificationHistory

data RootUpdated

data InvalidPackageException

data InvalidFileInIndex

data LocalFileCorrupted