import type { IComponentSchema } from './IComponentSchema';
import type { ISerializationOptions } from './ISerializationOptions';
/**
 * Convert component schema to Topics representation
 *
 * @example
 * toTopics({ name: 'Button', mount: 'app.btn', accepts: { click: {} }, emits: { clicked: {} } })
 * // Returns:
 * // # Topics for Button
 * //
 * // ## Accepts (subscribes to)
 * // app.btn.accepts.click
 * //
 * // ## Emits (publishes to)
 * // app.btn.emits.clicked
 */
export declare function toTopics(schema: IComponentSchema, options?: ISerializationOptions): string;
/**
 * Get all topics for a component as an array
 */
export declare function getTopicsArray(schema: IComponentSchema): string[];
/**
 * Generate topic subscription map
 */
export declare function getSubscriptionMap(schema: IComponentSchema): Record<string, string>;
/**
 * Generate topic publication map
 */
export declare function getPublicationMap(schema: IComponentSchema): Record<string, string>;
//# sourceMappingURL=toTopics.d.ts.map