UNPKG

hud-ai

Version:
107 lines (106 loc) 3.98 kB
/// <reference types="bluebird" /> import * as Promise from 'bluebird'; import { HudAiCreateAttributes, HudAiListAttributes, HudAiUpdateAttributes, Resource } from '../utils/Resource'; import { RequestManager } from '../RequestManager'; import { Organization, OrganizationUserRole, User, OrganizationFeedSettings } from '../entities'; export interface OrganizationListAttributes extends HudAiListAttributes { id?: string; name?: string; planId?: string; emailDomain?: string; ownerUserId?: string; } export interface OrganizationCreateAttributes extends HudAiCreateAttributes { name?: string; maxBillableAccounts?: number; emailDomain: string; signedLicenseAgreementAt?: Date; ownerUserId?: string; planId?: string; } export interface OrganizationUpdateAttributes extends HudAiUpdateAttributes { name?: string; maxBillableAccounts?: number; emailDomain?: string; signedLicenseAgreementAt?: Date; ownerUserId?: string; planId?: string; } export interface OrganizationSubscriptionCreateAttributes extends HudAiCreateAttributes { plan: string; source?: string; } export interface OrganizationUserListAttributes extends HudAiListAttributes { organizationId: string; email?: string; name?: string; } export interface OrganizationUserActivateAttributes { organizationId: string; userId: string; role?: string; } export interface OrganizationUserDeactivateAttributes { organizationId: string; userId: string; } export interface OrganizationUserRoleGetAttributes { organizationId: string; userId: string; } export interface OrganizationUserRoleUpdateAttributes { organizationId: string; userId: string; role: 'admin' | 'owner' | 'manager' | 'member'; } export interface OrganizationFeedSettingsGetAttributes { organizationId: string; } export interface OrganizationFeedSettingsUpdateAttributes { organizationId: string; importance?: number; article?: number; tweet?: number; quote?: number; stockAlert?: number; video?: number; businessWord?: number; feedContext?: number; followedPerson?: number; industryTerm?: number; jobFunctionTerm?: number; corpusTerm?: number; source?: number; minImportance?: number; decay?: number; decayOffset?: string; } export interface OrganizationFeedSettingsDeleteAttributes { organizationId: string; } export declare class OrganizationResource extends Resource<Organization, OrganizationListAttributes, OrganizationCreateAttributes, OrganizationUpdateAttributes> { constructor(requestManager: RequestManager); list(listArgs: OrganizationListAttributes): Promise<{ count: number; rows: Organization[]; }>; create(createArgs: OrganizationCreateAttributes): Promise<Organization>; get(id: string): Promise<Organization>; update(id: string, updateArgs: OrganizationUpdateAttributes): Promise<Organization>; del(id: string): Promise<void>; destroy(id: string): Promise<void>; getRole(args: OrganizationUserRoleGetAttributes): Promise<OrganizationUserRole>; updateRole(args: OrganizationUserRoleUpdateAttributes): Promise<OrganizationUserRole>; getFeedSettings(args: OrganizationFeedSettingsGetAttributes): Promise<OrganizationFeedSettings>; updateFeedSettings(args: OrganizationFeedSettingsUpdateAttributes): Promise<OrganizationFeedSettings>; deleteFeedSettings(args: OrganizationFeedSettingsDeleteAttributes): Promise<OrganizationFeedSettings>; activateUser(args: OrganizationUserActivateAttributes): Promise<User>; deactivateUser(args: OrganizationUserDeactivateAttributes): Promise<User>; getUsers(listArgs: OrganizationUserListAttributes): Promise<{ count: number; rows: User[]; }>; createSubscription(args: OrganizationSubscriptionCreateAttributes): Promise<any>; cancelSubscription(): Promise<any>; getSubscription(): Promise<any>; }