···1+// syntax parsing
2+export {
3+ formatScopeString,
4+ getMultiParam,
5+ getSingleParam,
6+ hasUnknownParams,
7+ hasScopePrefix,
8+ parseScopeString,
9+ type FormatScopeOptions,
10+ type NeRoArray,
11+ type ScopeSyntax,
12+} from './syntax.js';
13+14+// MIME utilities
15+export { isAccept, isMime, isRedundantAccept, matchesAccept, matchesAnyAccept } from './mime.js';
16+17+// permission classes
18+export {
19+ AccountPermission,
20+ ACCOUNT_ACTIONS,
21+ ACCOUNT_ATTRIBUTES,
22+ type AccountAction,
23+ type AccountAttr,
24+ type AccountPermissionMatch,
25+} from './permissions/account.js';
26+27+export { BlobPermission, type Accept, type BlobPermissionMatch } from './permissions/blob.js';
28+29+export {
30+ IdentityPermission,
31+ IDENTITY_ATTRIBUTES,
32+ type IdentityAttr,
33+ type IdentityPermissionMatch,
34+} from './permissions/identity.js';
35+36+export {
37+ IncludeScope,
38+ type ExpandedPermissions,
39+ type IncludeScopeData,
40+ type LexiconBlobPermission,
41+ type LexiconPermission,
42+ type LexiconPermissionSet,
43+ type LexiconRepoPermission,
44+ type LexiconRpcPermission,
45+ type RejectedPermission,
46+ type RejectionReason,
47+} from './permissions/include.js';
48+49+export {
50+ RepoPermission,
51+ REPO_ACTIONS,
52+ type CollectionParam,
53+ type RepoAction,
54+ type RepoPermissionMatch,
55+} from './permissions/repo.js';
56+57+export {
58+ RpcPermission,
59+ type AudParam,
60+ type LxmParam,
61+ type RpcPermissionMatch,
62+} from './permissions/rpc.js';
63+64+// scope set
65+export { ScopeSet, type ResourceType, type ScopeMatchOptions } from './scope-set.js';
66+67+// normalization
68+export {
69+ hasAtprotoScope,
70+ normalizeScopes,
71+ normalizeScopeValue,
72+ STATIC_SCOPES,
73+ type StaticScope,
74+ validateScopes,
75+} from './normalize.js';