import './databaseEvents.types.js'; import { DefaultPermissions, DefaultRoles } from './coreGeneric.types.js'; interface GDbase { testUserNames: string; apiKeys: string; testEnvType: any; } interface GDeventNamesBase { } declare global { interface GD_RegisterAllRoles extends Record { } interface GD_RegisterAllPermissions extends Record { } interface GD_RegisterAllPlatforms { } /** This stores all error names, particularly for `ctx.throw` autocompletion */ interface GreenDotErrors { } type GreenDotErrorNames = keyof GreenDotErrors; interface GD extends GDbase { role: keyof GD_RegisterAllRoles; permission: keyof GD_RegisterAllPermissions; platform: keyof GD_RegisterAllPlatforms; } type UserRolePermissionFields = { [K in GD['role'] as `is${Capitalize}`]: boolean; }; type UserPermissionFields = Record & UserRolePermissionFields; type UserPermissionsWithoutRolePerms = Omit; interface GDeventNames extends GDeventNamesBase { } type NewEventType = { [k in EventName]: [systemCtx: Ctx, ...params: Params]; }; } declare const _default: {}; export default _default;