type SCHEMA = {
    'kol-alert': {
        elements: {
            container: {
                modifiers: null;
            };
            icon: {
                modifiers: null;
            };
            heading: {
                modifiers: Set<'h0' | 'h1' | 'h2' | 'h3' | 'h4' | 'h5' | 'h6'>;
            };
            content: {
                modifiers: null;
            };
            closer: {
                modifiers: null;
            };
        };
        modifiers: Set<'hasCloser' | 'type-default' | 'type-error' | 'type-info' | 'type-success' | 'type-warning' | 'variant-card' | 'variant-msg'>;
    };
};
declare const bem: <BlockName extends "kol-alert", ElementName extends keyof NonNullable<SCHEMA[BlockName]["elements"]>>(blockName: BlockName, blockModifiersOrElementName?: ElementName | ((SCHEMA[BlockName]["modifiers"] extends infer T ? T extends SCHEMA[BlockName]["modifiers"] ? T extends Set<infer U> ? U : never : never : never) extends never ? undefined : Partial<Record<SCHEMA[BlockName]["modifiers"] extends infer T ? T extends SCHEMA[BlockName]["modifiers"] ? T extends Set<infer U> ? U : never : never : never, boolean>>) | undefined, elementModifiers?: ((NonNullable<SCHEMA[BlockName]["elements"]>[ElementName]["modifiers"] extends infer T_1 ? T_1 extends NonNullable<SCHEMA[BlockName]["elements"]>[ElementName]["modifiers"] ? T_1 extends Set<infer U> ? U : never : never : never) extends never ? undefined : Partial<Record<NonNullable<SCHEMA[BlockName]["elements"]>[ElementName]["modifiers"] extends infer T_1 ? T_1 extends NonNullable<SCHEMA[BlockName]["elements"]>[ElementName]["modifiers"] ? T_1 extends Set<infer U> ? U : never : never : never, boolean>>) | undefined) => string;
declare const BEM: SCHEMA;
declare const BEM_CLASS_ALERT__CLOSER: string;
declare const BEM_CLASS_ALERT__CONTENT: string;
declare const BEM_CLASS_ALERT__ICON: string;
export { bem as genBemAlert, BEM as BEM_ALERT };
export { BEM_CLASS_ALERT__CLOSER, BEM_CLASS_ALERT__CONTENT, BEM_CLASS_ALERT__ICON };
