{
  "version": 3,
  "sources": ["../../src/modules/bridge-model/attachable/asAttachableInstance.ts", "../../src/modules/bridge-model/attachable/isAttachableInstance.ts", "../../src/modules/bridge-model/typeChecks.ts", "../../src/modules/bridge-model/Queries/Connect.ts", "../../src/modules/bridge-model/Queries/Disconnect.ts", "../../src/modules/bridge-model/Queries/Expose.ts", "../../src/modules/bridge-model/Queries/Unexpose.ts", "../../src/modules/bridge-model/attachable/AttachableInstance.ts", "../../src/modules/bridge-model/Config.ts"],
  "sourcesContent": ["import { AsObjectFactory } from '@ariestools/sdk'\n\nimport { isAttachableBridgeInstance } from './isAttachableInstance.ts'\n\nexport const asAttachableBridgeInstance = AsObjectFactory.create(isAttachableBridgeInstance)\n", "import type { ObjectTypeShape, TypeCheck } from '@ariestools/sdk'\nimport { IsObjectFactory } from '@ariestools/sdk'\n\nimport { isAttachableModuleInstance } from '#module-model'\n\nimport { isBridgeInstance } from '../typeChecks.ts'\nimport type { AttachableBridgeInstance } from './AttachableInstance.ts'\n\nexport const requiredAttachableBridgeInstanceFunctions: ObjectTypeShape = {}\n\n// we do not use IsInstanceFactory here to prevent a cycle\nconst factory = new IsObjectFactory<AttachableBridgeInstance>()\n\nexport const isAttachableBridgeInstance: TypeCheck<AttachableBridgeInstance> = factory.create(requiredAttachableBridgeInstanceFunctions, [\n  isBridgeInstance,\n  isAttachableModuleInstance,\n])\n", "import { AsObjectFactory } from '@ariestools/sdk'\n\nimport {\n  IsInstanceFactory, isModuleInstance, IsQueryableModuleFactory, WithFactory,\n} from '#module-model'\n\nimport type { BridgeInstance } from './Instance.ts'\nimport type { BridgeModule } from './Module.ts'\nimport { BridgeConnectQuerySchema, BridgeDisconnectQuerySchema } from './Queries/index.ts'\n\nexport const isBridgeInstance = new IsInstanceFactory<BridgeInstance>().create(\n  { expose: 'function' },\n  [isModuleInstance],\n)\nexport const isBridgeModule = new IsQueryableModuleFactory<BridgeModule>().create([BridgeConnectQuerySchema, BridgeDisconnectQuerySchema])\n\nexport const asBridgeModule = AsObjectFactory.create(isBridgeModule)\nexport const asBridgeInstance = AsObjectFactory.create(isBridgeInstance)\n\n/** @deprecated use narrowing instead [ if(is) ] */\n// eslint-disable-next-line @typescript-eslint/no-deprecated\nexport const withBridgeModule = WithFactory.create(isBridgeModule)\n/** @deprecated use narrowing instead [ if(is) ] */\n// eslint-disable-next-line @typescript-eslint/no-deprecated\nexport const withBridgeInstance = WithFactory.create(isBridgeInstance)\n", "import {\n  zodAsFactory, zodIsFactory, zodToFactory,\n} from '@ariestools/sdk'\nimport {\n  asSchema, PayloadZodOfSchema, QueryFieldsZod,\n} from '@xyo-network/sdk-protocol'\nimport * as z from 'zod/mini'\n\nimport type { ModuleIdentifier } from '#module-model'\n\nexport const BridgeConnectQuerySchema: 'network.xyo.query.bridge.connect' & {\n  readonly __schema: true\n} = asSchema('network.xyo.query.bridge.connect', true)\nexport type BridgeConnectQuerySchema = typeof BridgeConnectQuerySchema\n\nexport const BridgeConnectQueryZod: z.ZodMiniObject<\n  & { schema: z.ZodMiniLiteral<BridgeConnectQuerySchema> }\n  & (typeof QueryFieldsZod)['shape']\n  & {\n    id: z.ZodMiniOptional<z.ZodMiniCustom<ModuleIdentifier, ModuleIdentifier>>\n    maxDepth: z.ZodMiniOptional<z.ZodMiniNumber<number>>\n  },\n  z.core.$strip\n> = z.extend(PayloadZodOfSchema(BridgeConnectQuerySchema), {\n  ...QueryFieldsZod.shape,\n  id: z.optional(z.custom<ModuleIdentifier>()),\n  maxDepth: z.optional(z.number()),\n})\n\nexport type BridgeConnectQuery = z.infer<typeof BridgeConnectQueryZod>\n\nexport const isBridgeConnectQuery: ReturnType<typeof zodIsFactory<BridgeConnectQuery>> = zodIsFactory(BridgeConnectQueryZod)\nexport const asBridgeConnectQuery: ReturnType<typeof zodAsFactory<BridgeConnectQuery>> = zodAsFactory(BridgeConnectQueryZod, 'asBridgeConnectQuery')\nexport const toBridgeConnectQuery: ReturnType<typeof zodToFactory<BridgeConnectQuery>> = zodToFactory(BridgeConnectQueryZod, 'toBridgeConnectQuery')\n", "import {\n  zodAsFactory, zodIsFactory, zodToFactory,\n} from '@ariestools/sdk'\nimport {\n  asSchema, PayloadZodOfSchema, QueryFieldsZod,\n} from '@xyo-network/sdk-protocol'\nimport * as z from 'zod/mini'\n\nimport type { ModuleIdentifier } from '#module-model'\n\nexport const BridgeDisconnectQuerySchema: 'network.xyo.query.bridge.disconnect' & {\n  readonly __schema: true\n} = asSchema('network.xyo.query.bridge.disconnect', true)\nexport type BridgeDisconnectQuerySchema = typeof BridgeDisconnectQuerySchema\n\nexport const BridgeDisconnectQueryZod: z.ZodMiniObject<\n  & { schema: z.ZodMiniLiteral<BridgeDisconnectQuerySchema> }\n  & (typeof QueryFieldsZod)['shape']\n  & {\n    id: z.ZodMiniOptional<z.ZodMiniCustom<ModuleIdentifier, ModuleIdentifier>>\n    maxDepth: z.ZodMiniOptional<z.ZodMiniNumber<number>>\n  },\n  z.core.$strip\n> = z.extend(PayloadZodOfSchema(BridgeDisconnectQuerySchema), {\n  ...QueryFieldsZod.shape,\n  id: z.optional(z.custom<ModuleIdentifier>()),\n  maxDepth: z.optional(z.number()),\n})\n\nexport type BridgeDisconnectQuery = z.infer<typeof BridgeDisconnectQueryZod>\n\nexport const isBridgeDisconnectQuery: ReturnType<typeof zodIsFactory<BridgeDisconnectQuery>> = zodIsFactory(BridgeDisconnectQueryZod)\nexport const asBridgeDisconnectQuery: ReturnType<typeof zodAsFactory<BridgeDisconnectQuery>> = zodAsFactory(BridgeDisconnectQueryZod, 'asBridgeDisconnectQuery')\nexport const toBridgeDisconnectQuery: ReturnType<typeof zodToFactory<BridgeDisconnectQuery>> = zodToFactory(BridgeDisconnectQueryZod, 'toBridgeDisconnectQuery')\n", "import {\n  zodAsFactory, zodIsFactory, zodToFactory,\n} from '@ariestools/sdk'\nimport {\n  asSchema, PayloadZodOfSchema, QueryFieldsZod,\n} from '@xyo-network/sdk-protocol'\nimport * as z from 'zod/mini'\n\nimport type { ModuleIdentifier } from '#module-model'\n\nexport const BridgeExposeQuerySchema: 'network.xyo.query.bridge.expose' & {\n  readonly __schema: true\n} = asSchema('network.xyo.query.bridge.expose', true)\nexport type BridgeExposeQuerySchema = typeof BridgeExposeQuerySchema\n\nexport interface BridgeExposeOptions {\n  maxDepth?: number\n  required?: boolean\n}\n\nexport const ModuleFilterPayloadSchema: 'network.xyo.module.filter' & {\n  readonly __schema: true\n} = asSchema('network.xyo.module.filter', true)\nexport type ModuleFilterPayloadSchema = typeof ModuleFilterPayloadSchema\n\nexport const ModuleFilterPayloadZod: z.ZodMiniObject<{\n  id: z.ZodMiniCustom<ModuleIdentifier, ModuleIdentifier>\n  maxDepth: z.ZodMiniOptional<z.ZodMiniNumber<number>>\n  required: z.ZodMiniOptional<z.ZodMiniBoolean<boolean>>\n  schema: z.ZodMiniLiteral<ModuleFilterPayloadSchema>\n}, z.core.$strip> = z.extend(PayloadZodOfSchema(ModuleFilterPayloadSchema), {\n  id: z.custom<ModuleIdentifier>(),\n  maxDepth: z.optional(z.number()),\n  required: z.optional(z.boolean()),\n})\n\nexport type ModuleFilterPayload = z.infer<typeof ModuleFilterPayloadZod>\n\nexport const isModuleFilterPayload: ReturnType<typeof zodIsFactory<ModuleFilterPayload>> = zodIsFactory(ModuleFilterPayloadZod)\nexport const asModuleFilterPayload: ReturnType<typeof zodAsFactory<ModuleFilterPayload>> = zodAsFactory(ModuleFilterPayloadZod, 'asModuleFilterPayload')\nexport const toModuleFilterPayload: ReturnType<typeof zodToFactory<ModuleFilterPayload>> = zodToFactory(ModuleFilterPayloadZod, 'toModuleFilterPayload')\n\nexport const BridgeExposeQueryZod: z.ZodMiniObject<\n  & { schema: z.ZodMiniLiteral<BridgeExposeQuerySchema> }\n  & (typeof QueryFieldsZod)['shape'],\n  z.core.$strip\n> = z.extend(PayloadZodOfSchema(BridgeExposeQuerySchema), { ...QueryFieldsZod.shape })\n\nexport type BridgeExposeQuery = z.infer<typeof BridgeExposeQueryZod>\n\nexport const isBridgeExposeQuery: ReturnType<typeof zodIsFactory<BridgeExposeQuery>> = zodIsFactory(BridgeExposeQueryZod)\nexport const asBridgeExposeQuery: ReturnType<typeof zodAsFactory<BridgeExposeQuery>> = zodAsFactory(BridgeExposeQueryZod, 'asBridgeExposeQuery')\nexport const toBridgeExposeQuery: ReturnType<typeof zodToFactory<BridgeExposeQuery>> = zodToFactory(BridgeExposeQueryZod, 'toBridgeExposeQuery')\n", "import {\n  zodAsFactory, zodIsFactory, zodToFactory,\n} from '@ariestools/sdk'\nimport {\n  asSchema, PayloadZodOfSchema, QueryFieldsZod,\n} from '@xyo-network/sdk-protocol'\nimport * as z from 'zod/mini'\n\nimport type { BridgeExposeOptions } from './Expose.ts'\n\nexport const BridgeUnexposeQuerySchema: 'network.xyo.query.bridge.unexpose' & {\n  readonly __schema: true\n} = asSchema('network.xyo.query.bridge.unexpose', true)\nexport type BridgeUnexposeQuerySchema = typeof BridgeUnexposeQuerySchema\n\nexport interface BridgeUnexposeOptions extends BridgeExposeOptions {}\n\nexport const BridgeUnexposeQueryZod: z.ZodMiniObject<\n  & { schema: z.ZodMiniLiteral<BridgeUnexposeQuerySchema> }\n  & (typeof QueryFieldsZod)['shape'],\n  z.core.$strip\n> = z.extend(PayloadZodOfSchema(BridgeUnexposeQuerySchema), { ...QueryFieldsZod.shape })\n\nexport type BridgeUnexposeQuery = z.infer<typeof BridgeUnexposeQueryZod>\n\nexport const isBridgeUnexposeQuery: ReturnType<typeof zodIsFactory<BridgeUnexposeQuery>> = zodIsFactory(BridgeUnexposeQueryZod)\nexport const asBridgeUnexposeQuery: ReturnType<typeof zodAsFactory<BridgeUnexposeQuery>> = zodAsFactory(BridgeUnexposeQueryZod, 'asBridgeUnexposeQuery')\nexport const toBridgeUnexposeQuery: ReturnType<typeof zodToFactory<BridgeUnexposeQuery>> = zodToFactory(BridgeUnexposeQueryZod, 'toBridgeUnexposeQuery')\n", "import type { TypeCheck } from '@ariestools/sdk'\nimport { IsObjectFactory } from '@ariestools/sdk'\n\nimport type { AttachableModuleInstance } from '#module-model'\n\nimport type { BridgeModuleEventData } from '../EventData.ts'\nimport type { BridgeInstance } from '../Instance.ts'\nimport type { BridgeModule } from '../Module.ts'\nimport type { BridgeParams } from '../Params.ts'\n\nexport interface AttachableBridgeInstance<\n  TParams extends BridgeParams = BridgeParams,\n  TEventData extends BridgeModuleEventData = BridgeModuleEventData,\n> extends BridgeModule<TParams, TEventData>,\n  AttachableModuleInstance<TParams, TEventData>,\n  BridgeInstance<TParams, TEventData> {}\n\nexport type AttachableBridgeInstanceTypeCheck<T extends AttachableBridgeInstance = AttachableBridgeInstance> = TypeCheck<T>\n\nexport class IsAttachableBridgeInstanceFactory<T extends AttachableBridgeInstance = AttachableBridgeInstance> extends IsObjectFactory<T> {}\n", "import type { EmptyObject, WithAdditional } from '@ariestools/sdk'\nimport {\n  zodAsFactory, zodIsFactory, zodToFactory,\n} from '@ariestools/sdk'\nimport type {\n  Payload,\n  Schema,\n} from '@xyo-network/sdk-protocol'\nimport { asSchema } from '@xyo-network/sdk-protocol'\nimport * as z from 'zod/mini'\n\nimport type { CacheConfig, ModuleConfig } from '#module-model'\nimport { ModuleConfigZod } from '#module-model'\n\nexport const BridgeConfigSchema: 'network.xyo.bridge.config' & {\n  readonly __schema: true\n} = asSchema('network.xyo.bridge.config', true)\nexport type BridgeConfigSchema = typeof BridgeConfigSchema\n\nexport interface BridgeClientConfig {\n  cache?: CacheConfig | true\n  discoverRoots?: 'start' | 'lazy'\n  maxDepth?: number\n}\n\nexport interface BridgeHostConfig {\n  cache?: CacheConfig | true\n  maxDepth?: number\n}\n\nexport const BridgeConfigZod: z.ZodMiniObject<\n  Omit<(typeof ModuleConfigZod)['shape'], 'schema'> & {\n    client: z.ZodMiniOptional<z.ZodMiniCustom<BridgeClientConfig, BridgeClientConfig>>\n    host: z.ZodMiniOptional<z.ZodMiniCustom<BridgeHostConfig, BridgeHostConfig>>\n    schema: z.ZodMiniLiteral<BridgeConfigSchema>\n  },\n  z.core.$strip\n> = z.extend(ModuleConfigZod, {\n  schema: z.literal(BridgeConfigSchema),\n  client: z.optional(z.custom<BridgeClientConfig>()),\n  host: z.optional(z.custom<BridgeHostConfig>()),\n})\n\nexport type BridgeConfigBase = z.infer<typeof BridgeConfigZod>\n\nexport const isBridgeConfig: ReturnType<typeof zodIsFactory<BridgeConfigBase>> = zodIsFactory(BridgeConfigZod)\nexport const asBridgeConfig: ReturnType<typeof zodAsFactory<BridgeConfigBase>> = zodAsFactory(BridgeConfigZod, 'asBridgeConfig')\nexport const toBridgeConfig: ReturnType<typeof zodToFactory<BridgeConfigBase>> = zodToFactory(BridgeConfigZod, 'toBridgeConfig')\n\nexport type BridgeConfig<\n  TConfig extends Payload | EmptyObject | void = void,\n  TSchema extends Schema | void = void,\n  TClient extends EmptyObject | void = void,\n  THost extends EmptyObject | void = void,\n> = ModuleConfig<\n  WithAdditional<\n    {\n      client?: WithAdditional<BridgeClientConfig, TClient>\n      host?: WithAdditional<BridgeHostConfig, THost>\n      schema: TConfig extends Payload ? TConfig['schema'] : BridgeConfigSchema\n    },\n    TConfig\n  >,\n  TSchema\n>\n"],
  "mappings": "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",
  "names": ["AsObjectFactory", "zodAsFactory", "zodIsFactory", "zodToFactory", "asSchema", "PayloadZodOfSchema", "QueryFieldsZod", "z", "zodAsFactory", "zodIsFactory", "zodToFactory", "asSchema", "PayloadZodOfSchema", "QueryFieldsZod", "z", "zodAsFactory", "zodIsFactory", "zodToFactory", "asSchema", "PayloadZodOfSchema", "QueryFieldsZod", "z", "AsObjectFactory", "IsObjectFactory", "zodAsFactory", "zodIsFactory", "zodToFactory", "asSchema", "z"]
}
