import ApiCall from "./ApiCall"; import { AnalyticsRuleCreateSchemaV1, AnalyticsRuleSchemaV1, } from "./AnalyticsRuleV1"; export interface AnalyticsRulesRetrieveSchemaV1 { rules: AnalyticsRuleSchemaV1[]; } const RESOURCEPATH = "/analytics/rules"; export default class AnalyticsRulesV1 { constructor(private readonly apiCall: ApiCall) { this.apiCall = apiCall; } async upsert( name: string, params: AnalyticsRuleCreateSchemaV1 ): Promise { return this.apiCall.put( this.endpointPath(name), params ); } async retrieve(): Promise { return this.apiCall.get(this.endpointPath()); } private endpointPath(operation?: string): string { return `${AnalyticsRulesV1.RESOURCEPATH}${ operation === undefined ? "" : "/" + encodeURIComponent(operation) }`; } static get RESOURCEPATH() { return RESOURCEPATH; } }