import ApiCall from "./ApiCall"; import AnalyticsRules from "./AnalyticsRules"; export interface AnalyticsRuleCreateSchema { type: "popular_queries"; params: { source: { collections: string[]; }; destination: { collection: string; }; limit: number; }; } export interface AnalyticsRuleDeleteSchema { name: string; } export interface AnalyticsRuleSchema extends AnalyticsRuleCreateSchema { name: string; } export default class AnalyticsRule { constructor(private name: string, private apiCall: ApiCall) {} async retrieve(): Promise { return this.apiCall.get(this.endpointPath()); } async delete(): Promise { return this.apiCall.delete(this.endpointPath()); } private endpointPath(): string { return `${AnalyticsRules.RESOURCEPATH}/${this.name}`; } }