export interface FlexibleApiLogProvider { getApiLogsByHour(date: Date, hour: number): Promise; getCollectionName(): string; getTimestampField(): string; validateConnection(): Promise; } export declare class ExistingCollectionProvider implements FlexibleApiLogProvider { private collectionName; private timestampField; private requiredFields; constructor(collectionName: string, timestampField: string, requiredFields?: any); getApiLogsByHour(date: Date, hour: number): Promise; getCollectionName(): string; getTimestampField(): string; validateConnection(): Promise; } export declare class NewCollectionProvider implements FlexibleApiLogProvider { private collectionName; private model; constructor(collectionName?: string); getApiLogsByHour(date: Date, hour: number): Promise; getCollectionName(): string; getTimestampField(): string; validateConnection(): Promise; } export declare function createApiLogProvider(): FlexibleApiLogProvider;