import { CustomData, ListArgs } from "./openchannel"; import { Model } from "./app"; /** * Ownership */ export interface Ownership { ownershipId: string; date: number; appId: string; userId: string; developerId: string; groupId?: string; ownershipType: string; ownershipStatus: OwnershipStatus; uninstallDate?: number; expires?: number; model: Model; customData?: CustomData; } export interface InstallAppOptions { appId: string; userId: string; modelId?: string; model?: string; customData?: CustomData; } export interface GetOwnershipOptions { ownershipId: string; } export interface ListOwnershipOptions extends ListArgs {} export interface UninstallAppOptions { ownershipId: string; userId: string; cancelOwnership?: boolean; customData?: CustomData; } export interface UpdateOwnershipOptions { ownershipId: string; customData?: CustomData; expires?: number; } export enum OwnershipStatus { PENDING = "pending", ACTIVE = "active", UNINSTALLED = "uninstalled", CANCELLED = "cancelled" } export interface ListOwnershipArgs extends ListArgs {}