/** * Channel State Management * * Store and manage state data per channel */ export declare interface ChannelStateConfig { enabled?: boolean ttl?: number maxSize?: number } export declare interface ChannelNamespaceConfig { enabled?: boolean separator?: string validateNamespace?: (namespace: string) => boolean } export declare class ChannelStateManager { constructor(config?: ChannelStateConfig); set(channel: string, key: string, value: unknown): void; get(channel: string, key: string): unknown; getAll(channel: string): Record; delete(channel: string, key: string): void; clear(channel: string): void; has(channel: string, key?: string): boolean; getSize(channel: string): number; } export declare class ChannelNamespaceManager { constructor(config?: ChannelNamespaceConfig); parse(channel: string): { namespace?: string, channel: string }; format(namespace: string, channel: string): string; belongsTo(channel: string, namespace: string): boolean; getChannelsInNamespace(channels: string[], namespace: string): string[]; }