/** * Options for the @Publisher decorator */ export interface PublisherOptions { /** The custom event name to emit on the container */ event: string; /** When to emit relative to the method invocation. Defaults to 'after'. */ phase?: 'before' | 'after' | 'both'; /** Optional console logging for debug purposes. Defaults to false. */ logging?: boolean; } /** * Marks a method to publish a custom event on invocation. * Useful for cross-platform event-driven architectures. * * Example: * @Container() * class UserService { * @Publisher('user.created') * createUser(dto: CreateUserDto) { ... } * } */ export declare function Publisher(optionsOrEvent: string | PublisherOptions): (target: any, propertyKey: string | symbol, _descriptor: PropertyDescriptor) => void;