import { MiddlewareHandler } from 'hono'; type Methods = 'GET' | 'POST' | 'PUT' | 'DELETE' | 'PATCH'; type Auth = { isAuthenticated: (request: Request) => Promise; }; type AuthRule = string | { path: string; methods?: [Methods, ...Methods[]]; }; interface AuthorizerConfig { auth: Auth; errorMessage?: string; rules?: AuthRule[]; } declare function authorizer({ auth, errorMessage, rules, }: AuthorizerConfig): MiddlewareHandler; export { type AuthRule, type AuthorizerConfig, authorizer };