"use strict";
var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
    if (k2 === undefined) k2 = k;
    var desc = Object.getOwnPropertyDescriptor(m, k);
    if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
      desc = { enumerable: true, get: function() { return m[k]; } };
    }
    Object.defineProperty(o, k2, desc);
}) : (function(o, m, k, k2) {
    if (k2 === undefined) k2 = k;
    o[k2] = m[k];
}));
var __exportStar = (this && this.__exportStar) || function(m, exports) {
    for (var p in m) if (p !== "default" && !Object.prototype.hasOwnProperty.call(exports, p)) __createBinding(exports, m, p);
};
Object.defineProperty(exports, "__esModule", { value: true });
exports.createMutationOperations = exports.createQueryOperations = exports.QueryBuilder = exports.GraphQLRequestError = void 0;
exports.createClient = createClient;
/**
 * ORM Client - createClient factory
 * @generated by @constructive-io/graphql-codegen
 * DO NOT EDIT - changes will be overwritten
 */
const client_1 = require("./client");
const orgGetManagersRecord_1 = require("./models/orgGetManagersRecord");
const orgGetSubordinatesRecord_1 = require("./models/orgGetSubordinatesRecord");
const appPermission_1 = require("./models/appPermission");
const orgPermission_1 = require("./models/orgPermission");
const appLevelRequirement_1 = require("./models/appLevelRequirement");
const orgMember_1 = require("./models/orgMember");
const appPermissionDefault_1 = require("./models/appPermissionDefault");
const orgPermissionDefault_1 = require("./models/orgPermissionDefault");
const appAdminGrant_1 = require("./models/appAdminGrant");
const appOwnerGrant_1 = require("./models/appOwnerGrant");
const appAchievement_1 = require("./models/appAchievement");
const appStep_1 = require("./models/appStep");
const orgAdminGrant_1 = require("./models/orgAdminGrant");
const orgOwnerGrant_1 = require("./models/orgOwnerGrant");
const membershipType_1 = require("./models/membershipType");
const appLimitDefault_1 = require("./models/appLimitDefault");
const orgLimitDefault_1 = require("./models/orgLimitDefault");
const orgChartEdgeGrant_1 = require("./models/orgChartEdgeGrant");
const appClaimedInvite_1 = require("./models/appClaimedInvite");
const appGrant_1 = require("./models/appGrant");
const appMembershipDefault_1 = require("./models/appMembershipDefault");
const orgMembershipDefault_1 = require("./models/orgMembershipDefault");
const orgClaimedInvite_1 = require("./models/orgClaimedInvite");
const appLimitEvent_1 = require("./models/appLimitEvent");
const orgLimitEvent_1 = require("./models/orgLimitEvent");
const orgGrant_1 = require("./models/orgGrant");
const orgChartEdge_1 = require("./models/orgChartEdge");
const appLimit_1 = require("./models/appLimit");
const orgLimitAggregate_1 = require("./models/orgLimitAggregate");
const orgMemberProfile_1 = require("./models/orgMemberProfile");
const orgLimit_1 = require("./models/orgLimit");
const appLevel_1 = require("./models/appLevel");
const appInvite_1 = require("./models/appInvite");
const orgMembershipSetting_1 = require("./models/orgMembershipSetting");
const orgInvite_1 = require("./models/orgInvite");
const appMembership_1 = require("./models/appMembership");
const orgMembership_1 = require("./models/orgMembership");
const query_1 = require("./query");
const mutation_1 = require("./mutation");
var client_2 = require("./client");
Object.defineProperty(exports, "GraphQLRequestError", { enumerable: true, get: function () { return client_2.GraphQLRequestError; } });
var query_builder_1 = require("./query-builder");
Object.defineProperty(exports, "QueryBuilder", { enumerable: true, get: function () { return query_builder_1.QueryBuilder; } });
__exportStar(require("./select-types"), exports);
__exportStar(require("./models"), exports);
var query_2 = require("./query");
Object.defineProperty(exports, "createQueryOperations", { enumerable: true, get: function () { return query_2.createQueryOperations; } });
var mutation_2 = require("./mutation");
Object.defineProperty(exports, "createMutationOperations", { enumerable: true, get: function () { return mutation_2.createMutationOperations; } });
/**
 * Create an ORM client instance
 *
 * @example
 * ```typescript
 * const db = createClient({
 *   endpoint: 'https://api.example.com/graphql',
 *   headers: { Authorization: 'Bearer token' },
 * });
 *
 * // Query users
 * const users = await db.user.findMany({
 *   select: { id: true, name: true },
 *   first: 10,
 * }).execute();
 *
 * // Create a user
 * const newUser = await db.user.create({
 *   data: { name: 'John', email: 'john@example.com' },
 *   select: { id: true },
 * }).execute();
 * ```
 */
function createClient(config) {
    const client = new client_1.OrmClient(config);
    return {
        orgGetManagersRecord: new orgGetManagersRecord_1.OrgGetManagersRecordModel(client),
        orgGetSubordinatesRecord: new orgGetSubordinatesRecord_1.OrgGetSubordinatesRecordModel(client),
        appPermission: new appPermission_1.AppPermissionModel(client),
        orgPermission: new orgPermission_1.OrgPermissionModel(client),
        appLevelRequirement: new appLevelRequirement_1.AppLevelRequirementModel(client),
        orgMember: new orgMember_1.OrgMemberModel(client),
        appPermissionDefault: new appPermissionDefault_1.AppPermissionDefaultModel(client),
        orgPermissionDefault: new orgPermissionDefault_1.OrgPermissionDefaultModel(client),
        appAdminGrant: new appAdminGrant_1.AppAdminGrantModel(client),
        appOwnerGrant: new appOwnerGrant_1.AppOwnerGrantModel(client),
        appAchievement: new appAchievement_1.AppAchievementModel(client),
        appStep: new appStep_1.AppStepModel(client),
        orgAdminGrant: new orgAdminGrant_1.OrgAdminGrantModel(client),
        orgOwnerGrant: new orgOwnerGrant_1.OrgOwnerGrantModel(client),
        membershipType: new membershipType_1.MembershipTypeModel(client),
        appLimitDefault: new appLimitDefault_1.AppLimitDefaultModel(client),
        orgLimitDefault: new orgLimitDefault_1.OrgLimitDefaultModel(client),
        orgChartEdgeGrant: new orgChartEdgeGrant_1.OrgChartEdgeGrantModel(client),
        appClaimedInvite: new appClaimedInvite_1.AppClaimedInviteModel(client),
        appGrant: new appGrant_1.AppGrantModel(client),
        appMembershipDefault: new appMembershipDefault_1.AppMembershipDefaultModel(client),
        orgMembershipDefault: new orgMembershipDefault_1.OrgMembershipDefaultModel(client),
        orgClaimedInvite: new orgClaimedInvite_1.OrgClaimedInviteModel(client),
        appLimitEvent: new appLimitEvent_1.AppLimitEventModel(client),
        orgLimitEvent: new orgLimitEvent_1.OrgLimitEventModel(client),
        orgGrant: new orgGrant_1.OrgGrantModel(client),
        orgChartEdge: new orgChartEdge_1.OrgChartEdgeModel(client),
        appLimit: new appLimit_1.AppLimitModel(client),
        orgLimitAggregate: new orgLimitAggregate_1.OrgLimitAggregateModel(client),
        orgMemberProfile: new orgMemberProfile_1.OrgMemberProfileModel(client),
        orgLimit: new orgLimit_1.OrgLimitModel(client),
        appLevel: new appLevel_1.AppLevelModel(client),
        appInvite: new appInvite_1.AppInviteModel(client),
        orgMembershipSetting: new orgMembershipSetting_1.OrgMembershipSettingModel(client),
        orgInvite: new orgInvite_1.OrgInviteModel(client),
        appMembership: new appMembership_1.AppMembershipModel(client),
        orgMembership: new orgMembership_1.OrgMembershipModel(client),
        query: (0, query_1.createQueryOperations)(client),
        mutation: (0, mutation_1.createMutationOperations)(client),
    };
}
