export { A as AbiTypeScope, I as CODEGEN_DEFAULTS, M as CONFIG_DEFAULTS, B as SchemaInput, S as Scope, b as ScopeOptions, C as ScopedSchemaInput, E as StoreInput, H as StoreWithShorthandsInput, J as TABLE_CODEGEN_DEFAULTS, L as TABLE_DEFAULTS, K as TABLE_DEPLOY_DEFAULTS, T as TableInput, F as TableShorthandInput, D as TablesInput, G as TablesWithShorthandsInput, V as ValidKeys, n as ValidateTableOptions, f as defineSchema, z as defineStore, t as defineTable, e as extendScope, x as extendedScope, Q as extractInternalType, g as get, a as getPath, c as getStaticAbiTypeKeys, h as hasOwnKey, i as isObject, j as isSchemaInput, R as isUserTypes, k as isValidPrimaryKey, m as mergeIfUndefined, o as requiredTableKey, N as resolveCodegen, P as resolveEnums, d as resolveSchema, r as resolveStore, s as resolveTable, q as resolveTableCodegen, w as resolveTables, O as scopeWithEnums, U as scopeWithUserTypes, l as validateKeys, v as validateSchema, y as validateStore, p as validateTable, u as validateTables, W as validateUserTypes } from '../store-10820ada.js';
export { N as NoStaticKeyFieldError, d as defineStoreWithShorthands, b as defineTableShorthand, i as isTableShorthandInput, h as resolveStoreWithShorthands, r as resolveTableShorthand, c as resolveTableWithShorthand, e as resolveTablesWithShorthands, g as validateStoreWithShorthands, a as validateTableShorthand, v as validateTableWithShorthand, f as validateTablesWithShorthands } from '../storeWithShorthands-d77a494a.js';
import { T as Table, S as Store } from '../output-b02052a1.js';
export { C as Codegen, E as Enums, a as TableCodegen, b as TableDeploy, U as UserTypes } from '../output-b02052a1.js';
import { conform } from '@arktype/util';
import { getKeySchema, getValueSchema } from '@latticexyz/protocol-parser/internal';
import { Schema } from '@latticexyz/config';
export { AbiType, Schema } from '@latticexyz/config';
import 'viem';
import '@latticexyz/schema-type/internal';

type schemaToV1<schema extends Schema> = {
    [key in keyof schema]: schema[key]["internalType"];
};
type tableToV1<table extends Table> = {
    directory: table["codegen"]["outputDirectory"];
    dataStruct: table["codegen"]["dataStruct"];
    tableIdArgument: table["codegen"]["tableIdArgument"];
    storeArgument: table["codegen"]["storeArgument"];
    keySchema: schemaToV1<getKeySchema<table>>;
    valueSchema: schemaToV1<getValueSchema<table>>;
    offchainOnly: Table extends table ? boolean : table["type"] extends "table" ? false : true;
    name: table["name"];
};
type storeToV1<store> = store extends Store ? {
    namespace: store["namespace"] extends "" ? "" : string;
    enums: {
        [key in keyof store["enums"]]: string[];
    };
    userTypes: {
        [key in keyof store["userTypes"]]: {
            internalType: store["userTypes"][key]["type"];
            filePath: string;
        };
    };
    storeImportPath: store["codegen"]["storeImportPath"];
    userTypesFilename: store["codegen"]["userTypesFilename"];
    codegenDirectory: store["codegen"]["outputDirectory"];
    codegenIndexFilename: store["codegen"]["indexFilename"];
    tables: {
        [key in keyof store["tables"] as store["tables"][key]["name"]]: tableToV1<store["tables"][key]>;
    };
    v2: store;
} : never;
declare function storeToV1<store>(store: conform<store, Store>): storeToV1<store>;

export { Store, Table, storeToV1, tableToV1 };
