"use strict";
/*
 * Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT.
 */
Object.defineProperty(exports, "__esModule", { value: true });
exports.Crm = void 0;
const crmCreateContact_js_1 = require("../funcs/crmCreateContact.js");
const crmGetAccount_js_1 = require("../funcs/crmGetAccount.js");
const crmGetContact_js_1 = require("../funcs/crmGetContact.js");
const crmGetContactCustomFieldDefinition_js_1 = require("../funcs/crmGetContactCustomFieldDefinition.js");
const crmGetList_js_1 = require("../funcs/crmGetList.js");
const crmListAccounts_js_1 = require("../funcs/crmListAccounts.js");
const crmListContactCustomFieldDefinitions_js_1 = require("../funcs/crmListContactCustomFieldDefinitions.js");
const crmListContacts_js_1 = require("../funcs/crmListContacts.js");
const crmListLists_js_1 = require("../funcs/crmListLists.js");
const crmUpdateContact_js_1 = require("../funcs/crmUpdateContact.js");
const sdks_js_1 = require("../lib/sdks.js");
const operations_js_1 = require("../sdk/types/operations.js");
const fp_js_1 = require("./types/fp.js");
class Crm extends sdks_js_1.ClientSDK {
    /**
     * Creates a new Contact
     */
    async createContact(request, options) {
        return (0, fp_js_1.unwrapAsync)((0, crmCreateContact_js_1.crmCreateContact)(this, request, options));
    }
    /**
     * Get Account
     */
    async getAccount(request, options) {
        return (0, fp_js_1.unwrapAsync)((0, crmGetAccount_js_1.crmGetAccount)(this, request, options));
    }
    /**
     * Get Contact
     */
    async getContact(request, options) {
        return (0, fp_js_1.unwrapAsync)((0, crmGetContact_js_1.crmGetContact)(this, request, options));
    }
    /**
     * Get Contact Custom Field Definition
     */
    async getContactCustomFieldDefinition(request, options) {
        return (0, fp_js_1.unwrapAsync)((0, crmGetContactCustomFieldDefinition_js_1.crmGetContactCustomFieldDefinition)(this, request, options));
    }
    /**
     * Get List
     */
    async getList(request, options) {
        return (0, fp_js_1.unwrapAsync)((0, crmGetList_js_1.crmGetList)(this, request, options));
    }
    /**
     * List Accounts
     */
    async listAccounts(request, options) {
        return (0, operations_js_1.unwrapResultIterator)((0, crmListAccounts_js_1.crmListAccounts)(this, request, options));
    }
    /**
     * List Contact Custom Field Definitions
     */
    async listContactCustomFieldDefinitions(request, options) {
        return (0, operations_js_1.unwrapResultIterator)((0, crmListContactCustomFieldDefinitions_js_1.crmListContactCustomFieldDefinitions)(this, request, options));
    }
    /**
     * List Contacts
     */
    async listContacts(request, options) {
        return (0, operations_js_1.unwrapResultIterator)((0, crmListContacts_js_1.crmListContacts)(this, request, options));
    }
    /**
     * Get all Lists
     */
    async listLists(request, options) {
        return (0, operations_js_1.unwrapResultIterator)((0, crmListLists_js_1.crmListLists)(this, request, options));
    }
    /**
     * Update Contact (early access)
     */
    async updateContact(request, options) {
        return (0, fp_js_1.unwrapAsync)((0, crmUpdateContact_js_1.crmUpdateContact)(this, request, options));
    }
}
exports.Crm = Crm;
//# sourceMappingURL=crm.js.map