/**
 * WithAnalytics mixin
 *
 * Adds an optional `.analytics` property to the service class.
 * The analytics provider is a per-entity @Injectable (e.g., AccountAnalytics)
 * injected via @Optional() in the generated service constructor.
 *
 * Usage: class MyService extends WithAnalytics(BaseService<...>) { ... }
 *
 * The generated service adds:
 *   @Optional() @Inject(AccountAnalytics) override analytics?: AccountAnalytics
 */
type Constructor<T = {}> = abstract new (...args: any[]) => T;
declare function WithAnalytics<TBase extends Constructor>(Base: TBase): TBase & ((abstract new (...args: any[]) => {
    analytics?: any;
}) & TBase);

export { WithAnalytics };
