import { z } from 'zod'; declare const pipeResponseWithoutData: z.ZodObject<{ meta: z.ZodArray>; rows: z.ZodOptional; rows_before_limit_at_least: z.ZodOptional; statistics: z.ZodOptional; rows_read: z.ZodOptional; bytes_read: z.ZodOptional; }, z.core.$strip>>; }, z.core.$strip>; declare const eventIngestReponseData: z.ZodObject<{ successful_rows: z.ZodNumber; quarantined_rows: z.ZodNumber; }, z.core.$strip>; type Config = { baseUrl?: string; } & ({ token: string; noop?: never; } | { token?: never; noop: true; }); declare class Tinybird { private readonly baseUrl; private readonly token; private readonly noop; constructor(config: Config); private fetch; buildPipe, TData extends z.ZodSchema>(req: { pipe: string; parameters?: TParameters; data: TData; opts?: { cache?: RequestCache; next?: { /** * Number of seconds to revalidate the cache (nextjs specific) */ revalidate?: number; }; }; }): (params: z.input) => Promise & { data: z.output[]; }>; buildIngestEndpoint>(req: { datasource: string; event: TSchema; wait?: boolean; }): (events: z.input | z.input[]) => Promise>; } /** * NoopTinybird is a mock implementation of the Tinybird client that doesn't do anything and returns empty data. */ declare class NoopTinybird extends Tinybird { constructor(); } export { type Config, NoopTinybird, Tinybird };