import { ConnectMixin as IConnectMixin } from '@uxland/redux/legacy/connect'; import { Constructor } from '@uxland/utilities/dedupe-mixin'; import { LitElement } from 'lit'; import { Store, Unsubscribe } from 'redux'; export declare class ConnectMixin implements IConnectMixin { bound: boolean; __reduxStoreSubscriptions__: Unsubscribe[]; } export declare const connect: >(defaultStore: Store) => (superClass: any) => any; /** * Connect mixin that provides redux functionalities and store access to parent class * @mixin * @memberof LitReduxConnect * @name connect * @since v1.0.0 * @param {Store} store Store * @example * * mixin = connect(defaultStore); * BaseClass = class Base { * baseProp = 'foo'; * }; * TestClass = class Test extends mixin(BaseClass) {}; * * To avoid typescript typings when using with other mixins, it is recommended to declare the mixin function as follows: * * function mixin>(superClass: T) { * return connect(store)(superClass) as Constructor & T; * } */ export default connect;