import type { PaginatedResponse, PaginationParams } from '../contracts/index.js';
export interface Identifiable {
    id: string;
}
export interface Timestamped {
    created_at: string;
}
export declare class InMemoryStore<T extends Identifiable & Timestamped> {
    protected items: Map<string, T>;
    get(id: string): T | undefined;
    has(id: string): boolean;
    set(item: T): void;
    delete(id: string): boolean;
    size(): number;
    all(): T[];
    paginate(items: T[], params?: PaginationParams): PaginatedResponse<T>;
    list(params?: PaginationParams): PaginatedResponse<T>;
}
//# sourceMappingURL=InMemoryStore.d.ts.map