UNPKG

@memori.ai/memori-api-client

Version:

React library to integrate a Memori in your app or website

1,029 lines (1,028 loc) 28 kB
export declare type Error = { code: number; message: string; }; export declare type ResponseSpec = { count?: number; totalCount?: number; requestID: string; requestDateTime: string; resultCode: number; resultMessage: string; }; export declare type MemoriConfig = { memoriConfigID: string; useCase: string; culture: string; descriptions?: { [lang: string]: string; }; dialogExamples?: { [lang: string]: string; }; logoURL?: string; }; export declare type Memori = { memoriID: string; name: string; password?: string; recoveryTokens?: string[]; newPassword?: string; ownerUserID?: string; ownerTenantName?: string; memoriConfigurationID: string; description: string; engineMemoriID?: string; isGiver?: boolean; isReceiver?: boolean; giverTag?: string; giverPIN?: string; privacyType: 'PUBLIC' | 'PRIVATE' | 'SECRET'; secretToken?: string; minimumNumberOfRecoveryTokens?: number; totalNumberOfRecoveryTokens?: number; avatarURL?: string; coverURL?: string; avatar3DURL?: string; avatarOriginal3DURL?: string; needsPosition?: boolean; needsDateTime?: boolean; voiceType: string; culture?: string; publishedInTheMetaverse?: boolean; metaverseEnvironment?: string; exposed?: boolean; mobile?: boolean; disableR2R3Loop?: boolean; disableR4Loop?: boolean; disableR5Loop?: boolean; ageRestriction?: number; confidenceOffset?: number; nsfw?: boolean; enableCompletions?: boolean; completionDescription?: string; enableDeepThought?: boolean; enableBoardOfExperts?: boolean; disableCompletionMediaExtraction?: boolean; completionConfigNameForQuestionAnswering?: string; completionConfigForQuestionAnswering?: CompletionConfig; completionConfigNameForImportExport?: string; completionConfigForImportExport?: CompletionConfig; completionConfigNameForDeepThought?: string; completionConfigForDeepThought?: CompletionConfig; completionTemperature?: number; completionMaxTokens?: number; chainingMemoriID?: string; chainingBaseURL?: string; chainingPassword?: string; dcmUser?: string; dcmSecret?: string; dcmAppContext?: string; properties?: [{ [key: string]: string; }]; creationTimestamp?: string; lastChangeTimestamp?: string; blockedUntil?: string; integrations?: Integration[]; sentInvitations?: Invitation[]; receivedInvitations?: Invitation[]; categories?: string[]; enableMacroFunctions?: string[]; macroParameters?: { [key: string]: any; }; ownerUserName?: string; gamificationLevel?: GamificationLevel; contentQualityIndex?: number; contentQualityIndexTimestamp?: string; alwaysAnswerWithCompletion?: boolean; requireLoginToken?: boolean; }; export declare type CompletionConfig = { completionConfigID: string; configName: string; description?: string; provider: 'OpenAI' | 'Anthropic' | 'Mistral' | 'Azure_OpenAI' | 'AWS_Anthropic' | 'Vertex_Anthropic' | 'Custom_OpenAI'; modelName?: string; contextSize?: number; timeout?: number; endPoint?: string; apiKey?: string; model: string; questionAnsweringEnabled?: boolean; importExportEnabled?: boolean; deepThoughtEnabled?: boolean; ownerUserID?: string; ownerUserName?: string; ownerTenantName?: string; visibleToTenantUsers?: boolean; visibleToOtherUsers?: boolean; useAsDefault?: boolean; chargeable?: boolean; region?: string; modelId?: string; accessKeyId?: string; projectId?: string; secretAccessKey?: string; location?: string; clientSecret?: string; refreshToken?: string; clientId?: string; applyTo?: ApplyToOption; }; export declare type ApplyToOption = 'ALL_TENANT_MEMORI_ONLY_QA_PURPOSE' | 'ALL_TENANT_MEMORI_ONLY_IE_PURPOSE' | 'ALL_TENANT_MEMORI_ONLY_DT_PURPOSE' | 'ALL_TENANT_MEMORI_ALL_ENABLED_PURPOSES'; export declare type Venue = { placeName: string; latitude: number; longitude: number; uncertainty?: number; }; export declare type NominatimItem = { place_id: number; lat: number; lon: number; display_name: string; type: string; category: string; importance: number; place_rank: number; address?: { house_number?: string; road?: string; hamlet?: string; village?: string; suburb?: string; town?: string; city?: string; municipality?: string; county?: string; state?: string; country: string; }; boundingbox: [number, number, number, number]; }; export declare type NotificationPrefs = { chatLogExtractionPeriod?: 'None' | 'Hourly' | 'Daily' | 'Weekly'; chatLogExtractionMinLines?: number; memoriID?: string; }; export declare type User = { tenant?: string; userID?: string; userName?: string; password?: string; newPassword?: string; eMail?: string; admin?: boolean; superAdmin?: boolean; verificationCode?: string; dontSendInvitationEmail?: boolean; flowID?: string; newsletterSubscribed?: boolean; maxMemori?: number; numMemori?: number; enableMemoriCreation?: boolean; enableBoardOfExperts?: boolean; enableDCMIntegration?: boolean; enableBadges?: boolean; enableVirtualSpaces?: boolean; enableDeepThought?: boolean; monthSessions?: number; monthValidSessions?: number; maxFreeSessions?: number; nonFreeSessionCost?: number; monthCompletions?: number; maxCompletions?: number; monthImportedSize?: number; maxImportSize?: number; creationTimestamp?: string; lastChangeTimestamp?: string; referral?: string; couponCode?: string; paying?: boolean; notificationPrefs?: NotificationPrefs[]; birthDate?: string; age?: number; tnCAndPPAccepted?: boolean; tnCAndPPAcceptanceDate?: string; pAndCUAccepted?: boolean; pAndCUAcceptanceDate?: string; avatarURL?: string; avatar3DURL?: string; avatar3DURLType?: string; }; export declare type UserFilters = { periodFrom?: string | undefined; periodTo?: string | undefined; tenantName?: string | undefined; text?: string | undefined; numberOfResults: number; startFrom: number; orderBy?: OrderBy | undefined; }; export declare type MemoriFilters = { text?: string | undefined; categories?: string[] | undefined; numberOfResults: number; startFrom: number; }; export declare type OrderBy = 'CreationDateAscending' | 'CreationDateDescending' | 'MemoriCountAscending' | 'MemoriCountDescending' | 'MonthCompletionsAscending' | 'MonthCompletionsDescending' | 'MonthImportSizeAscending' | 'MonthImportSizeDescending'; export declare type MemoriUser = { userID: string; email: string; userName: string; tenantName: string; disableDeepThought: boolean; creationTimestamp: string; creationSessionID: string; lastChangeTimestamp: string; lastChangeSessionID: string; }; export declare type Topic = { topicID: string; name: string; weight: number; creationTimestamp: string; creationSessionID: string; lastChangeTimestamp: string; lastChangeSessionID: string; }; export declare type IntegrationResource = { name: string; url: string; }; export declare type IntegrationType = 'GOOGLE' | 'ALEXA' | 'LANDING_EXPERIENCE'; export declare type Integration = { integrationID?: string; memoriID?: string; type: IntegrationType; state?: 'NEW' | 'PROCESSING' | 'DONE' | 'REMOVED' | 'ERROR' | 'WAITING_MANUAL_ACTION' | 'DRAFT' | 'NOT_VALIDATED' | 'PUBLISHED'; publish?: boolean; deviceEmails?: string[]; invocationText?: string; jobID?: string; customData?: string; resources?: IntegrationResource[]; creationTimestamp?: string | Date; lastChangeTimestamp?: string | Date; dataResult?: { [key: string]: any; }; }; export declare type PublicIntegrationListItem = { integration: Integration; memori: Memori; memoriUser: User; remoteMemoriId?: string; }; export interface RcFile extends File { readonly lastModifiedDate: string | Date; uid: string; } export declare type UploadFileStatus = 'error' | 'success' | 'done' | 'uploading' | 'removed'; export interface UploadFile<T = any> { uid: string; size?: number; name: string; fileName?: string; lastModified?: number; lastModifiedDate?: string | Date; url?: string; status?: UploadFileStatus; percent?: number; thumbUrl?: string; originFileObj?: RcFile; response?: T; error?: any; linkProps?: any; type?: string; xhr?: T; preview?: string; } export declare type Tenant = { tenantID: string; name: string; aliases?: string[]; tenantType?: 'Owned' | 'Customer'; description: string; logoURL?: string; adminEmail?: string; theme?: string; feedbackURL?: string; privacyPolicyURL?: string; speechProvider?: string; speechAPIKey?: string; adminCount?: number; userCount?: number; memoriCount?: number; disableRegistration?: boolean; maxMemoriPerAdmin?: number; maxMemoriPerUser?: number; maxTotalMemori?: number; maxAdmins?: number; maxUsers?: number; maxFreeSessions?: number; maxFreeSessionsPerUser?: number; nonFreeSessionCost?: number; maxCompletions?: number; maxCompletionsPerUser?: number; maxImportSize?: number; maxImportSizePerUser?: number; paying?: boolean; enableUserMemoriCreation?: boolean; enableBoardOfExperts?: boolean; enableDCMIntegration?: boolean; enableBadges?: boolean; enableDeepThought?: boolean; enableVirtualSpaces?: boolean; billingDelegation?: boolean; smtpConfig?: { server: string; user: string; password: string; port: number; socketSecurity: string; senderEmail: string; senderName: string; }; creationTimestamp?: string; lastChangeTimestamp?: string; perplexityAPIKey?: string; }; export declare type LocalizationKeyContent = { key: string; value: string; }; export declare type LocalizationKey = LocalizationKeyContent & { creationTimestamp?: string; creationName?: string; lastChangeTimestamp?: string; lastChangeName?: string; }; export declare type Asset = { assetID: string; assetURL: string; mimeType: string; memoriID: string; originalFileName?: string; title?: string; engineMemoryID?: string; creationTimestamp: string; lastChangeTimestamp: string; }; export declare type CustomWord = { customWordID: string; word: string; definition: string; creationTimestamp: string; creationSessionID: string; lastChangeTimestamp: string; lastChangeSessionID: string; }; export declare type ConsumptionLog = { consumptionLogID: string; from: string; to: string; type: 'Daily' | 'Monthly'; userID?: string; userName?: string; tenantName?: string; memoriID?: string; memoriName?: string; totalSessions: number; validSessions: number; completions: number; deepThoughtValidSessions: number; deepThoughtCompletions: number; importedSize: number; nonChargeableCompletions?: number; nonChargeableDeepThoughtCompletions?: number; nonChargeableImportedSize?: number; promptTokens: { [key: string]: number; }; completionTokens: { [key: string]: number; }; }; export declare type Notification = { notificationID: string; timestamp: string; severity: 'INFO' | 'WARN' | 'ALERT' | 'AWARD' | 'CHANGELOG'; type: 'BROADCAST' | 'TENANT' | 'USER'; tenantID?: string; userID?: string; validFrom?: string; userName?: string; validTo?: string; texts: { 'it-IT': string; 'en-US': string; [lang: string]: string; }; additionalInfo?: { [key: string]: string; }; }; export declare type SearchQuery = { text?: string; searchType?: 'Literal' | 'Semantic'; date?: string; dateUncertaintyDays?: number; placeName?: string; placeLatitude?: number; placeLongitude?: number; placeUncertaintyKm?: number; tag?: string; ignoreLastRead?: boolean; excludedMemoryIDs?: string[]; numberOfResults?: number; contextVars?: { [variable: string]: string; }; contextVarsToSet?: { [variable: string]: string; }; memoryTags?: string[]; withMediaOnly?: boolean; memoryType?: 'Question' | 'Story' | 'Default' | 'CompletionDraft' | 'CompletionPlaceholder' | 'ExpertReference'; }; export declare type SearchMatches = { confidence: number; confidenceLevel?: 'LOW' | 'MEDIUM' | 'HIGH'; memory: Memory; }; export declare type Answer = { text: string; preformatted?: boolean; creationTimestamp?: string; creationName?: string; lastChangeTimestamp?: string; lastChangeName?: string; }; export declare type Memory = { memoryID: string; memoryType: 'Question' | 'Story' | 'Default' | 'CompletionDraft' | 'ExpertReference'; lastRead?: string; readOccurrences?: number; receiverID?: string; receiverTag?: string; receiverName?: string; media?: Medium[]; text?: string; textVariants?: string[]; answers?: Answer[]; title?: string; titleVariants?: string[]; date?: string; dateUncertaintyDays?: number; placeName?: string; placeLatitude?: number; placeLongitude?: number; placeUncertaintyKm?: number; preformatted?: boolean; conclusive?: boolean; help?: boolean; notPickable?: boolean; hints?: string[]; tags?: string[]; minTimeout?: number; maxTimeout?: number; contextVars?: { [variable: string]: string; }; contextVarsToSet?: { [variable: string]: string; }; contextVarsToMatch?: { [variable: string]: string; }; dcmOutcomeType?: string; dcmOutcomeCode?: string; creationTimestamp?: string; creationName?: string; creationSessionID?: string; lastChangeTimestamp?: string; lastChangeName?: string; lastChangeSessionID?: string; }; export declare type UnansweredQuestion = { unansweredQuestionID?: string; text: string; occurrences: number; receiverID?: string; receiverTag?: string; receiverName?: string; creationTimestamp?: string; creationName?: string; creationSessionID?: string; lastChangeTimestamp?: string; lastChangeName?: string; lastChangeSessionID?: string; suggestions?: SearchMatches[]; contextVars?: { [variable: string]: string; }; }; export declare type OpenSession = { memoriID: string; password?: string; recoveryTokens?: string[]; tag?: string; pin?: string; continueFromChatLogID?: string; initialContextVars?: { [key: string]: string; }; initialQuestion?: string; forceCloseSessions?: boolean; birthDate?: string; additionalInfo?: { loginToken?: string; language?: string; referral?: string; timeZoneOffset?: string; [key: string]: string | undefined; }; }; export declare type MemoriSession = { sessionID: string; currentState: DialogState; gamificationPoints?: number; undefinedWords?: string[]; lastUpdateTimestamp?: string; }; export declare type Medium = { mediumID: string; url?: string; content?: string; mimeType: string; title?: string; properties?: { [key: string]: any; }; creationTimestamp?: string; creationName?: string; lastChangeTimestamp?: string; lastChangeName?: string; }; export declare type TranslatedHint = { text: string; originalText: string; }; export declare type DialogState = { state: string; stateName: string; previousState: string; confidence?: number; confidenceLevel?: 'NONE' | 'LOW' | 'MEDIUM' | 'HIGH'; emission?: string; translatedEmission?: string; continuationEmitted?: boolean; emitter?: string; completion?: boolean; lastMatchedMemoryID?: string; acceptsTimeout?: boolean; acceptsAbort?: boolean; acceptsMedia?: boolean; acceptsDate?: boolean; acceptsPlace?: boolean; acceptsTag?: boolean; acceptsFeedback?: boolean; hints?: string[]; timeout?: number; translatedHints?: TranslatedHint[]; currentTag?: string; currentDate?: string; currentPlaceName?: string; currentLatitude?: number; currentLongitude?: number; currentUncertaintyKm?: number; giverID?: string; currentReceiverID?: string; currentMemoryID?: string; media?: Medium[]; emittedMedia?: Medium[]; currentMedia?: Medium[]; knownTags?: { [key: string]: string; }; contextVars?: { [key: string]: string; }; memoryTags?: string[]; }; export declare type Message = { memoryID?: string; text: string; translatedText?: string; questionAnswered?: string; acceptsFeedback?: boolean; generatedByAI?: boolean; fromUser?: boolean; media?: Medium[]; initial?: boolean; emitter?: string; timestamp?: string; contextVars?: { [key: string]: string; }; date?: string; dateUncertaintyDays?: number; placeName?: string; placeLatitude?: number; placeLongitude?: number; placeUncertaintyKm?: number; tag?: string; memoryTags?: string[]; }; export declare type ChatMedium = { url?: string; content?: string; mimeType: string; title?: string; properties?: { [key: string]: any; }; }; export declare type ChatLogLine = { timestamp: string; inbound: boolean; text: string; emitter?: string; media?: ChatMedium[]; memoryID?: string; contextVars?: { [key: string]: string; }; completion?: boolean; acceptsFeedback?: boolean; }; export declare type ChatLog = { chatLogID: string; timestamp: string; memoriID: string; sessionID: string; receiverTag?: string; boardOfExperts?: boolean; lines: ChatLogLine[]; }; export interface ChatLogFilters { dateFrom?: string; dateTo?: string; showChatsWithNoHistory?: boolean; from: number; howMany: number; filter: string; } export declare type Utterance = { utteranceID?: string; text: string; creationTimestamp?: string; creationSessionID?: string; lastChangeTimestamp?: string; lastChangeSessionID?: string; }; export declare type Intent = { intentID?: string; intentType?: 'Internal' | 'WebHook'; name: string; utterances: Utterance[]; timeoutIntent?: boolean; webHook?: string; validityMinutes?: number; creationTimestamp?: string; creationSessionID?: string; lastChangeTimestamp?: string; lastChangeSessionID?: string; }; export declare type IntentSlot = { intentSlotID?: string; name: string; values?: string[]; webHook?: string; validityMinutes?: number; creationTimestamp?: string; creationSessionID?: string; lastChangeTimestamp?: string; lastChangeSessionID?: string; }; export declare type FunctionParameter = { parameterID?: string; name: string; description: string; parameterType: 'string' | 'number' | 'integer' | 'boolean'; possibleValues?: string[]; required?: boolean; }; export declare type Function = { functionID?: string; functionType: 'Internal' | 'WebHook'; name: string; description: string; parameters?: FunctionParameter[]; webHook: string; httpMethod?: 'GET' | 'POST' | 'PUT' | 'DELETE' | 'PATCH'; httpHeaders?: { [key: string]: string; }; httpQueryStringTemplate?: string; httpBodyTemplate?: string; httpBodyContentType?: string; sendExtensionHeaders?: string[]; }; export declare type CorrelationPair = { pairID?: string; text1: string; text2: string; correlated: boolean; occurrences?: number; }; export declare type Person = { personID?: string; personType: 'Giver' | 'Receiver'; name?: string; information?: string; pin: string; tag: string; creationTimestamp?: string; creationName?: string; lastChangeTimestamp?: string; lastChangeName?: string; }; export declare type PersonificationProfile = { tag?: string; pin?: string; name?: string; sessionID?: string; }; export interface Invitation { invitationID?: string; memoriID: string; isInviter?: boolean; isInvitee?: boolean; text?: string; destinationEMail: string; destinationName: string; tag: string; pin: string; type: string; state?: 'PENDING' | 'ACCEPTED' | 'REJECTED'; creationTimestamp?: string; lastChangeTimestamp?: string; } export declare type Stats = { totalReceivers: number; receiversWithMemories: number; totalMemories: number; publicMemories: number; memoriesWithMedia: number; totalQuestions: number; publicQuestions: number; questionsWithMoreThanOneAnswer: number; totalStories: number; publicStories: number; storiesWithDate: number; storiesWithPlace: number; storiesWithDateAndPlace: number; unansweredQuestions: number; successfulCorrelations: number; failedCorrelations: number; }; export declare type GamificationLevel = { points: number; badge: string; pointsForCurrentBadge: number; nextBadge?: { points: number; badge: string; }; }; export declare type EventLog = { eventLogID: string; timestamp: string; eventType: 'MemoriOpened' | 'MemoriClosed' | 'QuestionAnsweredCorrectly' | 'QuestionAnsweredIncorrectly' | 'QuestionNotAnswered' | 'IntentMatched'; memoriID: string; sessionID: string; maintenanceType?: 'None' | 'ConsumptionJob' | 'ChatLogExtractionJob' | 'ContentQualityJob'; userAgent?: string; ipAddress?: string; additionalInfo?: OpenSession['additionalInfo']; memoryID?: string; intentID?: string; enteredText?: string; receiverTag?: string; }; export declare type UserLog = { timestamp: string; count: number; }; export declare type UsersLog = { timestamp: string; countUsers: number; countRecurrentUsers: number; }; export interface CsvSpecs { newLine: '\n' | '\r\n'; hasHeaders?: boolean; headerNames?: string[]; questionColumnName: string; answerColumnName: string; contextVarsToMatchColumnName?: string; contextVarsToSetColumnName?: string; csvSeparator?: string; questionTitleVariantsSeparator?: string; memoryTagsColumnName?: string; } export interface JSONLSpecs { platform?: string; includeInstructions?: boolean; createdOrChangedAfter?: string; } export interface TxtSpecs { granularity?: 'LOW' | 'MEDIUM' | 'HIGH'; attachSource?: boolean; sourceAttachmentTitle?: string; questionsGenerationInstructions?: string; } export interface ImportParams { forceImport?: boolean; csvSpecs?: CsvSpecs; txtSpecs?: TxtSpecs; conclusive?: boolean; notPickable?: boolean; importName?: string; notes?: string; contextVarsToSet?: { [variable: string]: string; }; contextVarsToMatch?: { [variable: string]: string; }; receiverID?: string; addMediaLink?: string; linkTitleHandling?: 'FixedTitle' | 'HostName' | 'FetchFromUrl'; linkTitle?: string; memoryTags?: string[]; } export interface ImportMemoriParams { memoriName: string; memoriPassword: string; privacyType: string; memoriZipAssetId: string; importName: string; forceImport: boolean; notes: string; } export interface AnalysisParams { query: string; threshold?: number; } export interface ImportWarning { warningType: 'Existing Similar Memory' | 'Internal Error'; rowNumber?: number; text?: string; similarTexts?: { text: string; similarityLevel: 'HIGH' | 'MEDIUM' | 'LOW'; }[]; } export interface AnalysisWarning { warningType: 'Error' | string; text?: string; } export interface ProcessStatus { processID: string; memoriID: string; processUserName: string; processType: 'Import' | 'Analysis'; status: 'Pending' | 'Starting' | 'Running' | 'Stopped' | 'Completed' | 'Failed'; error?: string; progress: number; processSpecsJSON?: string; begin?: string; end?: string; eta?: number; processedElements?: number; totalElements?: number; creationTimestamp?: string; lastChangeTimestamp?: string; } export interface ImportStatus extends ProcessStatus { importType: 'CSV' | 'TXT' | 'Memori'; importSize: number; importName?: string; importedMemories?: number; importWarningsCount?: number; importWarnings?: ImportWarning[]; } export interface AnalysisStatus extends ProcessStatus { analysisType: 'UserQuery'; query?: string; analysisWarningsCount?: number; analysisWarnings?: AnalysisWarning[]; } export interface UserQueryMatch { userQueryMatchID: string; analysisID: string; memoriID: string; engineUserID: string; userName: string; userTenantName: string; userEmail: string; match: number; } export interface Badge { badgeID?: string; date?: string; name?: string; description?: string; imageURL?: string; tags?: string[]; issuerName?: string; issuerDescription?: string; issuerEmail?: string; issuerURL?: string; } export interface ConsumptionItem { key: string; id: string; promptTokens: number; completionTokens: number; totalTokens: number; validSessions: number; completions: number; deepThoughtValidSessions: number; deepThoughtCompletions: number; importedSize: number; nonChargeableCompletions?: number; nonChargeableDeepThoughtCompletions?: number; nonChargeableImportedSize?: number; cost?: number; children?: ConsumptionItem[]; } export interface ExpertReference { expertID: string; name: string; description: string; default?: boolean; expertMemoriID: string; expertPassword?: string; expertBaseURL: string; creationTimestamp?: string; creationSessionID?: string; lastChangeTimestamp?: string; lastChangeSessionID?: string; } export interface KnownFact { knownFactID: string; knownFactType: 'ShortTerm' | 'LongTerm'; text: string; creationTimestamp?: string; creationSessionID?: string; lastChangeTimestamp?: string; lastChangeSessionID?: string; } export declare type ConsumptionData = { id: string; key: string; promptTokens: number; completionTokens: number; totalTokens: number; validSessions: number; completions: number; deepThoughtValidSessions: number; deepThoughtCompletions: number; importedSize: number; nonChargeableCompletions: number; nonChargeableDeepThoughtCompletions: number; nonChargeableImportedSize: number; children?: ConsumptionData[]; }; export declare type MacroFunction = { name: string; descriptions: { [key: string]: string; }; macroParameters?: { name: string; descriptions: { [key: string]: string; }; obfuscated?: boolean; }[]; }; export declare type TrustedApplication = { trustedApplicationID: string; tenantID: string; name: string; description: string; baseUrl: string; authorizationToken: string; isEnabled: boolean; createdByUserID: string; lastModifiedByUserID: string; creationTimestamp: string; lastChangeTimestamp: string; };