import { type PermissionQueryContent } from './PermissionQuery/types';
export declare function createNS(name: string): {
    namespace: string;
    n: string;
    b: (blockSuffix?: string) => string;
    e: (element?: string | undefined) => string;
    m: (modifier?: string | undefined) => string;
    be: (blockSuffix?: string | undefined, element?: string | undefined) => string;
    em: (element?: string | undefined, modifier?: string | undefined) => string;
    bm: (blockSuffix?: string | undefined, modifier?: string | undefined) => string;
    bem: (blockSuffix?: string | undefined, element?: string | undefined, modifier?: string | undefined) => string;
    is: {
        (name: string, state: boolean | undefined): string;
        (name: string): string;
    };
    cssVar: (object: Record<string, string>) => Record<string, string>;
    cssVarName: (name: string) => string;
    cssVarBlock: (object: Record<string, string>) => Record<string, string>;
    cssVarBlockName: (name: string) => string;
};
export declare function createId(className: string): string;
export declare function normalizedPermissionCodes(codes: string[]): Record<string, any>;
export declare function normalizedPermissionQueryContent(content: Record<string, any>): PermissionQueryContent | undefined;
export declare function usePermissionMatchedByParent(options: {
    code: string;
    ref: any;
    row?: any;
    useEffect?: boolean;
}): any;
