import type { AccessPath } from './common';
import type { AccessResource, AccessResources } from './resource';
/**
 * 访问匹配器
 */
export interface AccessMatcher {
    /**
     * 进行匹配
     * @param resource 资源
     * @param path 路径
     */
    match(resource: AccessResource, path: AccessPath): boolean;
    /**
     * 取得资源
     * @param path 路径
     */
    obtain(path: AccessPath): AccessResource | null;
    /**
     * 获取基础路径
     */
    getBasename(): string | undefined;
    /**
     * 设置基础路径
     */
    setBasename(basename: string | undefined): void;
}
/**
 * 简单匹配器
 */
export declare class SimpleMatcher implements AccessMatcher {
    /**
     * 缓存资源
     * @private
     */
    private readonly cache;
    /**
     * 资源集合
     * @private
     */
    private readonly resources;
    /**
     * 基础路径
     * @private
     */
    private basename?;
    /**
     * 构造函数
     * @param resources 资源集合
     */
    constructor(resources: AccessResources);
    /**
     * 进行匹配
     * @param resource 资源
     * @param path 路径
     */
    match(resource: AccessResource, path: AccessPath): boolean;
    /**
     * 取得资源
     * @param path 路径
     */
    obtain(path: AccessPath): AccessResource | null;
    /**
     * 获取基础路径
     */
    getBasename(): string | undefined;
    /**
     * 设置基础路径
     */
    setBasename(basename: string | undefined): void;
}
