UNPKG

react-dayo

Version:

A Queue component for notification etc

32 lines (31 loc) 810 B
import { QueueProps } from '../components/queue'; export interface DayoOptions { to: QueueProps['to']; position: QueueProps['position']; maxLength: number; } export declare type DayoProps = DayoOptions; export interface DayoImpl<Seed> { getQueue(): Seed[]; setQueue(queue: Seed[]): void; } export declare type IDayo<Seed> = DayoImpl<Seed>; export interface DayoState<Seed> { queue: Seed[]; } export interface DayoOperators<Seed> { /** * Update target seed state for running re-rendering */ rewriteQueueItem(seed: Seed): void; /** * To add a seed into queue state */ addSeed(seed: Seed): void; /** * To skip a overflowed seeds in queue greater than `maxLength` */ skipOverflowSeeds(opts: { maxLength: number; }): void; }