interface EnvelopeResponse { receiverId: number; envelope: Envelope; } interface Envelope { id: number; userId: number; title: string; status: number; statusTranslated: string; contractType: number; contractTypeTranslated: string; subject: string; uuid: string; user: User; documents: Document[]; } interface Document { id: number; filepath: string; filename: string; elements: Element[]; } interface Element { id: number; left: number; top: number; width: number; height: number; page: number; readOnly: boolean; } interface User { id: number; email: string; name: string; prename: string; username: string; language: string; fullName: string; } type IFunction = (...args: Array) => T; export { EnvelopeResponse, Envelope, Document, Element, User, IFunction }