UNPKG

@visionfi/server-sdk

Version:

Server-side SDK for VisionFI API access using Google Service Account authentication

86 lines (85 loc) 3.2 kB
import { AxiosInstance } from 'axios'; import { DocuSignConfig, DocuSignConfigResponse, DocuSignAuthStatusUpdate, DocuSignAuthStatusResponse } from './types.js'; /** * Class for managing DocuSign configuration. * Provides methods to get, update, and manage DocuSign integration configuration. */ export declare class DocuSignConfigManager { private apiClient; /** * Creates a new DocuSignConfigManager instance. * * @param apiClient - The Axios instance used for API requests */ constructor(apiClient: AxiosInstance); /** * Retrieves the current DocuSign integration configuration. * * @returns A promise that resolves to the DocuSign configuration response * * @example * ```typescript * const configResponse = await docuSignManager.getConfig(); * * if (configResponse.success) { * console.log('DocuSign configuration:', configResponse.data); * } else { * console.error('Failed to get DocuSign config:', configResponse.message); * } * ``` */ getConfig(): Promise<DocuSignConfigResponse>; /** * Updates or creates the DocuSign integration configuration. * * @param config - The DocuSign configuration to update or create * @returns A promise that resolves to the DocuSign configuration response * * @example * ```typescript * const configResponse = await docuSignManager.updateConfig({ * userId: '12345678-1234-1234-1234-123456789012', * accountId: '98765432-9876-9876-9876-987654321098', * baseUri: 'https://demo.docusign.net/restapi', * name: 'Production DocuSign Integration', * enabled: true * }); * * if (configResponse.success) { * console.log('DocuSign configuration updated:', configResponse.data); * } else { * console.error('Failed to update DocuSign config:', configResponse.message); * } * ``` */ updateConfig(config: DocuSignConfig): Promise<DocuSignConfigResponse>; /** * Updates only the authentication status of a DocuSign integration. * * @param statusUpdate - The authentication status update data * @returns A promise that resolves to the DocuSign authentication status response * * @example * ```typescript * const statusResponse = await docuSignManager.updateAuthStatus({ * authenticationStatus: 'authenticated', * lastAuthenticated: new Date().toISOString() * }); * * if (statusResponse.success) { * console.log('DocuSign auth status updated:', statusResponse.data); * } else { * console.error('Failed to update auth status:', statusResponse.message); * } * ``` */ updateAuthStatus(statusUpdate: DocuSignAuthStatusUpdate): Promise<DocuSignAuthStatusResponse>; /** * Handles errors from API calls and formats them for the client. * * @param error - The error object from the failed API call * @param defaultMessage - A default message to use if no specific message is available * @returns A VisionFiError with the appropriate message and status code */ private handleError; }