Files
outline/app/models/Integration.ts
Apoorv Mishra 450d0d9355 Github integration (#6414)
Co-authored-by: Tom Moor <tom.moor@gmail.com>
2024-03-23 07:09:28 -07:00

39 lines
722 B
TypeScript

import { observable } from "mobx";
import type {
IntegrationService,
IntegrationSettings,
IntegrationType,
} from "@shared/types";
import User from "~/models/User";
import Model from "~/models/base/Model";
import Field from "~/models/decorators/Field";
import Relation from "~/models/decorators/Relation";
class Integration<T = unknown> extends Model {
static modelName = "Integration";
id: string;
type: IntegrationType;
service: IntegrationService;
collectionId: string;
userId: string;
@Relation(() => User, { onDelete: "cascade" })
user: User;
teamId: string;
@Field
@observable
events: string[];
@observable
settings: IntegrationSettings<T>;
}
export default Integration;