import { ContextPlugin } from "@webiny/api"; import { TenancyContext } from "@webiny/api-tenancy/types"; import { WcpContext } from "@webiny/api-wcp/types"; import { SecurityContext, SecurityStorageOperations } from "./types"; import { MultiTenancyAppConfig, MultiTenancyGraphQLConfig } from "./enterprise/multiTenancy"; export { default as NotAuthorizedResponse } from "./NotAuthorizedResponse"; export { default as NotAuthorizedError } from "./NotAuthorizedError"; export interface SecurityConfig extends MultiTenancyAppConfig { storageOperations: SecurityStorageOperations; } export * from "./utils/AppPermissions"; export * from "./utils/getPermissionsFromSecurityGroupsForLocale"; export * from "./utils/IdentityValue"; export * from "./utils/createGroupsTeamsAuthorizer"; export { verifyJwtUsingJwk } from "./utils/verifyJwtUsingJwk"; export { isJwt } from "./utils/isJwt"; type Context = SecurityContext & TenancyContext & WcpContext; export declare const createSecurityContext: ({ storageOperations }: SecurityConfig) => ContextPlugin; export declare const createSecurityGraphQL: (config?: MultiTenancyGraphQLConfig) => ContextPlugin; export { createSecurityRolePlugin } from "./plugins/SecurityRolePlugin"; export { createSecurityTeamPlugin } from "./plugins/SecurityTeamPlugin";