import { List, Map as IMap } from 'immutable'; import { CommitRecord, Commit, CardRecord, CardTypeRecord, ActionRecord, CardTagData, CardTagRecord } from 'pmpos-models'; export declare class CardManager { private postCommit; private removeCommits; private commits; private cards; private otherIndex; constructor(); integrateProtocol(postCommit: (commits: any[]) => void, removeCommits: (cardIds: string[]) => void): void; readConcurrencyData(actionType: string, card: CardRecord, actionData: any): any; applyAction(card: CardRecord | undefined, action: ActionRecord, executeRules?: boolean): CardRecord; canApplyAction(card: CardRecord, action: ActionRecord): boolean; actionReduce: (card: CardRecord, action: ActionRecord) => CardRecord; commitReduce: (card: CardRecord, commit: CommitRecord) => CardRecord; addCommits(commits: Commit[]): void; getCards(): IMap; reduceTags(card: CardRecord, list: List, filters: string[]): any; getTags(filters: string[]): List; getTagsFrom(filters: string[], cards: IMap): List; getCardsByType(typeId: string): List; getCardById(id: string): CardRecord | undefined; hasCard(cardId: string): boolean; getCardByName(type: string, name: string): CardRecord | undefined; getCommits(id: string): List | undefined; findCards(cardType: CardTypeRecord, value: string, showAllCards?: boolean): CardRecord[]; sort(a: CardRecord, b: CardRecord, compare: string): number; getCardSuggestions(ref: string, value: string): Array<{ label: string; }>; getTagSortIndexByCard(card: CardRecord, tag: CardTagRecord): number; getCount(cardType: string): number; deleteCards(cardTypeId: string): void; postCommits(commits: any[]): void; private addCommit(commit); } declare const _default: CardManager; export default _default;