import type { OrmClientConfig } from './client';
import { InfraGetAllRecordModel } from './models/infraGetAllRecord';
import { InfraRefModel } from './models/infraRef';
import { InfraStoreModel } from './models/infraStore';
import { InfraObjectModel } from './models/infraObject';
import { InfraCommitModel } from './models/infraCommit';
import { DbPresetModel } from './models/dbPreset';
import { PlatformNamespaceModel } from './models/platformNamespace';
import { NamespaceModel } from './models/namespace';
import { PlatformNamespaceEventModel } from './models/platformNamespaceEvent';
import { NamespaceEventModel } from './models/namespaceEvent';
export type { OrmClientConfig, QueryResult, GraphQLError, GraphQLAdapter } from './client';
export { GraphQLRequestError, FetchAdapter } from './client';
export { QueryBuilder } from './query-builder';
export * from './select-types';
export * from './models';
export { createMutationOperations } from './mutation';
/**
 * 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();
 * ```
 */
export declare function createClient(config: OrmClientConfig): {
    infraGetAllRecord: InfraGetAllRecordModel;
    infraRef: InfraRefModel;
    infraStore: InfraStoreModel;
    infraObject: InfraObjectModel;
    infraCommit: InfraCommitModel;
    dbPreset: DbPresetModel;
    platformNamespace: PlatformNamespaceModel;
    namespace: NamespaceModel;
    platformNamespaceEvent: PlatformNamespaceEventModel;
    namespaceEvent: NamespaceEventModel;
    mutation: {
        infraInitEmptyRepo: <S extends import("./input-types").InfraInitEmptyRepoPayloadSelect>(args: import("./mutation").InfraInitEmptyRepoVariables, options: {
            select: S;
        } & import("./select-types").StrictSelect<S, import("./input-types").InfraInitEmptyRepoPayloadSelect>) => import("./query-builder").QueryBuilder<{
            infraInitEmptyRepo: import("./select-types").InferSelectResult<import("./input-types").InfraInitEmptyRepoPayload, S> | null;
        }>;
        infraSetDataAtPath: <S extends import("./input-types").InfraSetDataAtPathPayloadSelect>(args: import("./mutation").InfraSetDataAtPathVariables, options: {
            select: S;
        } & import("./select-types").StrictSelect<S, import("./input-types").InfraSetDataAtPathPayloadSelect>) => import("./query-builder").QueryBuilder<{
            infraSetDataAtPath: import("./select-types").InferSelectResult<import("./input-types").InfraSetDataAtPathPayload, S> | null;
        }>;
        infraInsertNodeAtPath: <S extends import("./input-types").InfraInsertNodeAtPathPayloadSelect>(args: import("./mutation").InfraInsertNodeAtPathVariables, options: {
            select: S;
        } & import("./select-types").StrictSelect<S, import("./input-types").InfraInsertNodeAtPathPayloadSelect>) => import("./query-builder").QueryBuilder<{
            infraInsertNodeAtPath: import("./select-types").InferSelectResult<import("./input-types").InfraInsertNodeAtPathPayload, S> | null;
        }>;
        provisionBucket: <S extends import("./input-types").ProvisionBucketPayloadSelect>(args: import("./mutation").ProvisionBucketVariables, options: {
            select: S;
        } & import("./select-types").StrictSelect<S, import("./input-types").ProvisionBucketPayloadSelect>) => import("./query-builder").QueryBuilder<{
            provisionBucket: import("./select-types").InferSelectResult<import("./input-types").ProvisionBucketPayload, S> | null;
        }>;
    };
};
