import type { IPrimitiveDefinition, PrimitiveHandler } from './mccarthy';
export type { IPrimitiveDefinition, PrimitiveHandler };
export { mccarthyPrimitives } from './mccarthy';
export { arithmeticPrimitives } from './arithmetic';
export { comparisonPrimitives } from './comparison';
export { booleanPrimitives } from './boolean';
export { listPrimitives } from './list';
export { higherOrderPrimitives } from './higher-order';
export { stringPrimitives } from './string';
export { streamPrimitives } from './stream';
export { matrixPrimitives } from './matrix';
export { metaPrimitives } from './meta';
export { serializationPrimitives } from './serialization';
/**
 * All primitives combined into a single array
 * Total: ~118 primitives across 11 categories
 */
export declare const allPrimitives: IPrimitiveDefinition[];
/**
 * Build a lookup map for O(1) primitive access
 * Maps both primary names and aliases to their definitions
 */
export declare function buildPrimitiveMap(primitives?: IPrimitiveDefinition[]): Map<string, IPrimitiveDefinition>;
/**
 * Default primitive map with all primitives
 */
export declare const primitiveMap: Map<string, IPrimitiveDefinition>;
/**
 * Check if a name is a primitive
 */
export declare function isPrimitive(name: string): boolean;
/**
 * Get a primitive by name or alias
 */
export declare function getPrimitive(name: string): IPrimitiveDefinition | undefined;
/**
 * Get all primitive names (including aliases)
 */
export declare function getAllPrimitiveNames(): string[];
/**
 * Get only primary primitive names (no aliases)
 */
export declare function getPrimaryPrimitiveNames(): string[];
/**
 * Group primitives by category for documentation/introspection
 */
export declare const primitivesByCategory: {
    readonly mccarthy: IPrimitiveDefinition[];
    readonly arithmetic: IPrimitiveDefinition[];
    readonly comparison: IPrimitiveDefinition[];
    readonly boolean: IPrimitiveDefinition[];
    readonly list: IPrimitiveDefinition[];
    readonly higherOrder: IPrimitiveDefinition[];
    readonly string: IPrimitiveDefinition[];
    readonly stream: IPrimitiveDefinition[];
    readonly matrix: IPrimitiveDefinition[];
    readonly meta: IPrimitiveDefinition[];
    readonly serialization: IPrimitiveDefinition[];
};
/**
 * Category names for iteration
 */
export declare const categoryNames: (keyof typeof primitivesByCategory)[];
//# sourceMappingURL=index.d.ts.map