/* eslint-disable @typescript-eslint/ban-ts-comment */ // src/index.ts // @ts-ignore import axios, { AxiosInstance } from 'axios'; interface AwareOptions { baseURL?: string; } export class AwareSDK { private apiKey: string; private axiosInstance: AxiosInstance; constructor(apiKey: string, options?: AwareOptions) { this.apiKey = apiKey; this.axiosInstance = axios.create({ baseURL: options?.baseURL || 'https://us-central1-aware-labs.cloudfunctions.net/', headers: { 'Authorization': `Bearer ${apiKey}`, 'Content-Type': 'application/json', }, timeout: 5000, }); } async verifyCompletion(completion: AwareCompletionInput, profileID: AwareProfileIdentifier): Promise { return this.axiosInstance.post('AW_SDK_VerifyCompletion', { completion, profileID, }) .then((res) => res.data); } } export default function initialize(apiKey: AwareKey, options?: AwareOptions): AwareSDK { return new AwareSDK(apiKey, options); }