import { ChunkId, Table } from "../interface"; import { Row } from "../row"; import { DataWatcher } from "../watchers/abstract"; interface ChunkData { id: ChunkId; size: number; table: Table; expiresAt: number; } /** * Chunk of a nasic item of this package * * Every chunk: * - has its unique id * - belongs to a table * - contain rows * - has size and time restrictions * - can be blocked/unblocked */ export declare class Chunk { #private; id: ChunkId; table: Table; size: number; createdAt: number; expiresAt: number; blocked: boolean; consistent: boolean; forceReady: boolean; /** * Create Chunk instance * * @param {DataWatcher} dataWatcher * @param {ChunkData} data */ constructor(dataWatcher: DataWatcher, data: ChunkData); isExpired(): boolean; isOverfilled(): boolean; isConsistent(): boolean; isUnblocked(): boolean; isReady(): boolean; block(): void; unblock(): void; setConsistency(state: boolean): void; setReady(): void; loadRows(): Promise; resolve(): Promise; } export {};