@voiceflow/base-types
Version:
Voiceflow base project types
70 lines • 2.01 kB
TypeScript
import type { AnyRecord } from '@voiceflow/common';
import type { LinkType } from '../base/link.js';
import type { KnowledgeBase } from './knowledgeBase.js';
import type { Member } from './member.js';
import type { Prototype } from './prototype.js';
import type { Themes } from './theme.js';
export { LinkType } from '../base/link.js';
export * from './knowledgeBase.js';
export * from './member.js';
export * from './prototype.js';
export * from './theme.js';
export declare enum Privacy {
PUBLIC = "public",
PRIVATE = "private"
}
export interface ReportTag {
tagID: string;
label: string;
}
export interface Sticker {
id: string;
url: string;
}
export interface AIAssistSettings {
aiPlayground?: boolean;
generateStep?: boolean;
generateNoMatch?: boolean;
generativeTasks?: boolean;
}
export interface TranscriptSettings {
saveTestTranscripts: boolean;
saveTranscriptsWithNoInteraction: boolean;
inactiveTimeout?: number;
}
export declare enum ClassifyStrategy {
VF_NLU = "VF_NLU",
VF_NLU_LLM_HYBRID = "VF_NLU_LLM_HYBRID"
}
export interface NLUSettings {
classifyStrategy?: ClassifyStrategy;
}
export interface Model<PlatformData extends AnyRecord, MemberPlatformData extends AnyRecord> {
_id: string;
teamID: string;
_version?: number;
creatorID: number;
devVersion?: string;
liveVersion?: string;
stagingVersion?: string;
name: string;
type?: string;
image?: string;
privacy?: Privacy;
platform: string;
stickers?: Sticker[];
linkType?: LinkType;
prototype?: Prototype;
apiPrivacy?: Privacy;
reportTags?: Record<string, ReportTag>;
customThemes: Themes;
updatedAt?: string;
updatedBy?: number;
aiAssistSettings?: AIAssistSettings;
nluSettings?: NLUSettings;
members: Member<MemberPlatformData>[];
platformData: PlatformData;
knowledgeBase?: KnowledgeBase;
transcriptSettings?: TranscriptSettings;
}
//# sourceMappingURL=index.d.ts.map