import { TopicConfig } from "../../interfaces/TopicConfig";
import Zamza from "../../Zamza";
import { Metrics } from "../../Metrics";
import MongoWrapper from "../MongoWrapper";
export declare class TopicConfigModel {
    readonly metrics: Metrics;
    readonly mongoWrapper: MongoWrapper | null;
    readonly name: string;
    private model;
    constructor(zamza: Zamza, mongoWrapper?: MongoWrapper | null);
    registerModel(mongoose: any, schemaConstructor: any): void;
    get(topic: string): Promise<TopicConfig>;
    listAsTopics(): Promise<string[]>;
    list(): Promise<TopicConfig[]>;
    upsert(topic: string, cleanupPolicy: string, retentionMs: number, timestamp?: number, queryable?: boolean): Promise<TopicConfig>;
    delete(topic: string): any;
    truncateCollection(): any;
}
//# sourceMappingURL=TopicConfigModel.d.ts.map