import { SmrtObjectOptions, SmrtObject } from '@happyvertical/smrt-core'; import { ContentFeedFormat } from './content-feed-parser'; export type ContentFeedSourceStatus = 'active' | 'paused' | 'error' | 'archived'; export interface ContentFeedSourceOptions extends SmrtObjectOptions { tenantId?: string | null; name?: string; feedUrl?: string; homepageUrl?: string | null; format?: ContentFeedFormat | null; status?: ContentFeedSourceStatus; defaultCategory?: string | null; sourceGroup?: string | null; pollIntervalMinutes?: number; etag?: string | null; lastModified?: string | null; lastFetchedAt?: Date | string | null; lastSuccessAt?: Date | string | null; lastError?: string | null; metadata?: Record | string; createdAt?: Date | string; updatedAt?: Date | string; } export declare class ContentFeedSource extends SmrtObject { tenantId: string | null; name: string; feedUrl: string; homepageUrl: string | null; format: ContentFeedFormat | null; status: ContentFeedSourceStatus; defaultCategory: string | null; sourceGroup: string | null; pollIntervalMinutes: number; etag: string | null; lastModified: string | null; lastFetchedAt: Date | null; lastSuccessAt: Date | null; lastError: string | null; metadata: Record; createdAt: Date; updatedAt: Date; constructor(options?: ContentFeedSourceOptions); getMetadata(): Record; setMetadata(metadata: Record): void; markFetchStarted(at?: Date): void; markFetchSucceeded(at?: Date, headers?: { etag?: string | null; lastModified?: string | null; }): void; markFetchFailed(error: unknown, at?: Date): void; protected transformJSON(json: Record): Record; } //# sourceMappingURL=content-feed-source.d.ts.map