matrix-dimension/src-ts/integrations/Integration.ts
Travis Ralston 599fb80112 Add the start of an admin API and re-add widgets
The frontend is still broken and doesn't use these endpoints at all. A migration tool still needs to be written to pull in existing widget configurations.
2017-12-18 21:44:01 -07:00

30 lines
No EOL
935 B
TypeScript

import { IntegrationRecord } from "../db/models/IntegrationRecord";
export class Integration {
// These are meant to be set by the underlying integration
public category: "bot" | "complex-bot" | "bridge" | "widget";
public type: string;
public requirements: IntegrationRequirement[];
// These are meant to be set by us
public displayName: string;
public avatarUrl: string;
public description: string;
public isEnabled: boolean;
public isPublic: boolean;
constructor(record: IntegrationRecord) {
this.type = record.type;
this.displayName = record.name;
this.avatarUrl = record.avatarUrl;
this.description = record.description;
this.isEnabled = record.isEnabled;
this.isPublic = record.isPublic;
}
}
export interface IntegrationRequirement {
condition: "publicRoom" | "canSendEventTypes";
argument: any;
expectedValue: any;
}