import type { ParsedGif } from '../gifuct/types'; import type { Stream } from './uint8-parser'; export declare const parse: >(stream: Stream, schema: unknown, result?: T, parent?: T) => unknown; export declare const loop: (schema: unknown, continueFunc: (st: Stream, r: R, p: R) => boolean) => (stream: Stream, result: R, parent: R, _parse: ParseFn) => R[]; type ConditionalFunction = (st: Stream, result: T, parent: T) => boolean; type ParseFn = (st: Stream, schema: GifSchema, result: T, parent: T) => void; export type GifSchema = unknown | ParsedGif; export declare const conditional: (schema: unknown, conditionFunc: ConditionalFunction) => (stream: Stream, result: T, parent: T, parseFn: ParseFn) => void; export {};