import type { IUpsertAgent } from './sqlite-store.js'; export interface ISyncBatch { agents: IUpsertAgent[]; cursor?: string; hasMore: boolean; total?: number; } export interface IDataSource { readonly sourceId: string; readonly chainPrefix: string; isAvailable(): Promise; fetchBatch(options: { cursor?: string; updatedSince?: number; limit?: number; }): Promise; getTotalCount(): Promise; } export declare abstract class BaseDataSource implements IDataSource { abstract readonly sourceId: string; abstract readonly chainPrefix: string; abstract isAvailable(): Promise; abstract fetchBatch(options: { cursor?: string; updatedSince?: number; limit?: number; }): Promise; abstract getTotalCount(): Promise; protected defaultBatchSize: number; } //# sourceMappingURL=data-source.d.ts.map