import Container from 'mini-ioc'; import type { IRegisteredEntity } from '..'; import ReactiveStore from '../../reactive-store'; import type IAdapter from '../adapter'; import EntityAbilityGuard from '../ability-guard'; export declare type ListItem = Record; export interface IState { loading: boolean; list: ListItem[]; total: number; perPage: number; offset: number; page: number; } export interface IApiOptions { page?: number; perPage?: number; } export default abstract class EntityBaseStore extends ReactiveStore { protected ioc: Container; protected abilityGuard: EntityAbilityGuard; protected entity: IRegisteredEntity | null; constructor(ioc?: Container, abilityGuard?: EntityAbilityGuard); protected getAdapter(): Promise; get entityMeta(): IRegisteredEntity | null; get abilities(): Record; }