import type { ActionCollectionConfig, StateChanges, StoreTools } from "react-hooks-global-states/types";
import type { BaseMetadata, StateMeta } from "./types";
import { GlobalStore } from "./GlobalStore";
export declare abstract class GlobalStoreAbstract<State, Metadata extends BaseMetadata | unknown, ActionsConfig extends ActionCollectionConfig<State, StateMeta<Metadata>> | unknown> extends GlobalStore<State, Metadata, ActionsConfig> {
    protected onInit: (args: StoreTools<State, StateMeta<Metadata>>) => void;
    protected onStateChanged: (args: StoreTools<State, StateMeta<Metadata>> & StateChanges<State>) => void;
    protected abstract onInitialize: (args: StoreTools<State, StateMeta<Metadata>>) => void;
    protected abstract onChange: (args: StoreTools<State, StateMeta<Metadata>> & StateChanges<State>) => void;
}
export default GlobalStoreAbstract;
