@veltdev/types
Version:
Velt is an SDK to add collaborative features to your product within minutes. Example: Comments like Figma, Frame.io, Google docs or sheets, Recording like Loom, Huddles like Slack and much more.
53 lines (52 loc) • 1.47 kB
TypeScript
import { ResolverActions } from "../../utils/enums";
import { ResolverConfig, ResolverResponse } from "./resolver.data.model";
export interface AttachmentDataProvider {
save: (request: SaveAttachmentResolverRequest) => Promise<ResolverResponse<SaveAttachmentResolverData>>;
delete: (request: DeleteAttachmentResolverRequest) => Promise<ResolverResponse<undefined>>;
config?: ResolverConfig;
}
export interface DeleteAttachmentResolverRequest {
attachmentId: number;
metadata?: AttachmentResolverMetadata;
event?: ResolverActions;
}
export interface SaveAttachmentResolverRequest {
attachment: ResolverAttachment;
metadata?: AttachmentResolverMetadata;
event?: ResolverActions;
}
export interface PartialAttachment {
url: string;
name: string;
attachmentId: number;
}
export interface ResolverAttachment {
attachmentId: number;
/**
* File to be uploaded
*/
file: File;
/**
* File name
*/
name?: string;
/**
* Metadata of an attachment
*/
metadata?: AttachmentResolverMetadata;
/**
* Mime type of an attachment
*/
mimeType?: string;
}
export interface AttachmentResolverMetadata {
organizationId: string | null;
documentId: string | null;
folderId?: string | null;
attachmentId: number | null;
commentAnnotationId: string | null;
apiKey: string | null;
}
export interface SaveAttachmentResolverData {
url: string;
}