@adobe/data - v0.10.30
    Preparing search index...

    Variable createConst

    create: <
        const XP extends Database.Plugin<{}, {}, {}, {}, never, {}, {}, {}, {}>,
        const IP extends Database.Plugin<{}, {}, {}, {}, never, {}, {}, {}, {}>,
        const CS extends ComponentSchemas,
        const RS extends ResourceSchemas,
        const A extends
            ArchetypeComponents<
                StringKeyof<RemoveIndex<CS> & XP["components"] & IP["components"]>,
            >,
        const IX extends
            IndexDeclarations<
                FromSchemas<RemoveIndex<CS> & XP["components"] & IP["components"]>,
                RemoveIndex<A> & XP["archetypes"] & IP["archetypes"],
            >,
        const TD extends
            TransactionDeclarations<
                FromSchemas<RemoveIndex<CS> & XP["components"] & IP["components"]>,
                FromSchemas<RemoveIndex<RS> & XP["resources"] & IP["resources"]>,
                RemoveIndex<A> & XP["archetypes"] & IP["archetypes"],
                RemoveIndex<IX> & XP["indexes"] & IP["indexes"],
                PartitionKeysOf<RemoveIndex<CS> & XP["components"] & IP["components"]>,
                DefaultFactoryKeys<RemoveIndex<CS> & XP["components"] & IP["components"]>,
            >,
        const AD,
        const S extends string = never,
        const SVF extends ServiceFactories<FromPlugin<AmbientPlugin<XP, IP>>> = {},
        const CVF extends
            PluginComputedFactories<
                FullDBForPlugin<
                    RemoveIndex<CS>,
                    RemoveIndex<RS>,
                    RemoveIndex<A>,
                    RemoveIndex<TD>,
                    S,
                    XP["actions"] & IP["actions"],
                    AmbientPlugin<XP, IP>,
                    RemoveIndex<SVF>,
                    RemoveIndex<IX>,
                >,
            > = {},
    >(
        plugins: {
            actions?: AD & {
                readonly [K: string]: (
                    db: Database<
                        FromSchemas<RemoveIndex<CS> & XP["components"] & IP["components"]>,
                        FromSchemas<RemoveIndex<RS> & XP["resources"] & IP["resources"]>,
                        RemoveIndex<A> & XP["archetypes"] & IP["archetypes"],
                        ToTransactionFunctions<
                            RemoveIndex<TD> & XP["transactions"] & IP["transactions"],
                        >,
                        S | StringKeyof<XP["systems"]> | StringKeyof<IP["systems"]>,
                        ToActionFunctions<XP["actions"] & IP["actions"]>,
                        FromServiceFactories<
                            RemoveIndex<SVF> & XP["services"] & IP["services"],
                        >,
                        FromComputedFactories<
                            RemoveIndex<CVF> & XP["computed"] & IP["computed"],
                        >,
                        RemoveIndex<IX> & XP["indexes"] & IP["indexes"],
                    >,
                    input?: any,
                ) => any;
            };
            archetypes?: A;
            components?: CS & NoReservedNames<CS> & NoNameClash<
                CS,
                RemoveIndex<XP["resources"] & IP["resources"]>,
            >;
            computed?: CVF & PluginComputedFactories<
                FullDBForPlugin<
                    RemoveIndex<CS>,
                    RemoveIndex<RS>,
                    RemoveIndex<A>,
                    {},
                    string,
                    XP["actions"] & IP["actions"],
                    AmbientPlugin<XP, IP>,
                    RemoveIndex<SVF>,
                    RemoveIndex<IX>,
                >,
            >;
            extends?: XP;
            imports?: IP;
            indexes?: IX;
            resources?: RS & NoReservedNames<RS> & NoNameClash<
                RS,
                RemoveIndex<CS & XP["components"] & IP["components"]>,
            >;
            services?: SVF & {
                readonly [K: string]: (
                    db: FromPlugin<AmbientPlugin<XP, IP>>,
                ) => unknown;
            };
            systems?: {
                readonly [K in string]: {
                    create: (
                        db: Database<
                            FromSchemas<RemoveIndex<(...)> & (...)[(...)] & (...)[(...)]>,
                            FromSchemas<RemoveIndex<(...)> & (...)[(...)] & (...)[(...)]>,
                            RemoveIndex<A> & XP["archetypes"] & IP["archetypes"],
                            ToTransactionFunctions<
                                RemoveIndex<(...)> & (...)[(...)] & (...)[(...)],
                            >,
                            S | StringKeyof<(...)[(...)]> | StringKeyof<(...)[(...)]>,
                            ToActionFunctions<RemoveIndex<(...)> & (...)[(...)] & (...)[(...)]>,
                            FromServiceFactories<RemoveIndex<(...)> & (...)[(...)] & (...)[(...)]>,
                            FromComputedFactories<
                                RemoveIndex<(...)> & (...)[(...)] & (...)[(...)],
                            >,
                            RemoveIndex<IX> & XP["indexes"] & IP["indexes"],
                            never,
                        > & {
                            services: {
                                -readonly [K in string | number | symbol]: FromServiceFactories<
                                    (...),
                                >[K]
                            };
                            store: Store<
                                FromSchemas<(...) & (...) & (...)>,
                                FromSchemas<(...) & (...) & (...)>,
                                RemoveIndex<(...)> & (...)[(...)] & (...)[(...)],
                                {},
                                never,
                                DefaultFactoryKeys<(...) & (...) & (...)>,
                            >;
                        },
                    ) => void
                    | SystemFunction;
                    schedule?: {
                        after?: readonly NoInfer<(...) | (...) | (...)>[];
                        before?: readonly NoInfer<(...) | (...) | (...)>[];
                        during?: readonly NoInfer<(...) | (...) | (...)>[];
                    };
                }
            };
            transactions?: TD;
        },
    ) => CreatePluginResult<
        XP,
        RemoveIndex<CS>,
        RemoveIndex<RS>,
        RemoveIndex<A>,
        RemoveIndex<TD>,
        S,
        AD,
        RemoveIndex<SVF>,
        RemoveIndex<CVF>,
        RemoveIndex<IX>,
    > = createPlugin

    Type declaration

      • <
            const XP extends Database.Plugin<{}, {}, {}, {}, never, {}, {}, {}, {}>,
            const IP extends Database.Plugin<{}, {}, {}, {}, never, {}, {}, {}, {}>,
            const CS extends ComponentSchemas,
            const RS extends ResourceSchemas,
            const A extends
                ArchetypeComponents<
                    StringKeyof<RemoveIndex<CS> & XP["components"] & IP["components"]>,
                >,
            const IX extends
                IndexDeclarations<
                    FromSchemas<RemoveIndex<CS> & XP["components"] & IP["components"]>,
                    RemoveIndex<A> & XP["archetypes"] & IP["archetypes"],
                >,
            const TD extends
                TransactionDeclarations<
                    FromSchemas<RemoveIndex<CS> & XP["components"] & IP["components"]>,
                    FromSchemas<RemoveIndex<RS> & XP["resources"] & IP["resources"]>,
                    RemoveIndex<A> & XP["archetypes"] & IP["archetypes"],
                    RemoveIndex<IX> & XP["indexes"] & IP["indexes"],
                    PartitionKeysOf<RemoveIndex<CS> & XP["components"] & IP["components"]>,
                    DefaultFactoryKeys<RemoveIndex<CS> & XP["components"] & IP["components"]>,
                >,
            const AD,
            const S extends string = never,
            const SVF extends ServiceFactories<FromPlugin<AmbientPlugin<XP, IP>>> = {},
            const CVF extends
                PluginComputedFactories<
                    FullDBForPlugin<
                        RemoveIndex<CS>,
                        RemoveIndex<RS>,
                        RemoveIndex<A>,
                        RemoveIndex<TD>,
                        S,
                        XP["actions"] & IP["actions"],
                        AmbientPlugin<XP, IP>,
                        RemoveIndex<SVF>,
                        RemoveIndex<IX>,
                    >,
                > = {},
        >(
            plugins: {
                actions?: AD & {
                    readonly [K: string]: (
                        db: Database<
                            FromSchemas<RemoveIndex<CS> & XP["components"] & IP["components"]>,
                            FromSchemas<RemoveIndex<RS> & XP["resources"] & IP["resources"]>,
                            RemoveIndex<A> & XP["archetypes"] & IP["archetypes"],
                            ToTransactionFunctions<
                                RemoveIndex<TD> & XP["transactions"] & IP["transactions"],
                            >,
                            S | StringKeyof<XP["systems"]> | StringKeyof<IP["systems"]>,
                            ToActionFunctions<XP["actions"] & IP["actions"]>,
                            FromServiceFactories<
                                RemoveIndex<SVF> & XP["services"] & IP["services"],
                            >,
                            FromComputedFactories<
                                RemoveIndex<CVF> & XP["computed"] & IP["computed"],
                            >,
                            RemoveIndex<IX> & XP["indexes"] & IP["indexes"],
                        >,
                        input?: any,
                    ) => any;
                };
                archetypes?: A;
                components?: CS & NoReservedNames<CS> & NoNameClash<
                    CS,
                    RemoveIndex<XP["resources"] & IP["resources"]>,
                >;
                computed?: CVF & PluginComputedFactories<
                    FullDBForPlugin<
                        RemoveIndex<CS>,
                        RemoveIndex<RS>,
                        RemoveIndex<A>,
                        {},
                        string,
                        XP["actions"] & IP["actions"],
                        AmbientPlugin<XP, IP>,
                        RemoveIndex<SVF>,
                        RemoveIndex<IX>,
                    >,
                >;
                extends?: XP;
                imports?: IP;
                indexes?: IX;
                resources?: RS & NoReservedNames<RS> & NoNameClash<
                    RS,
                    RemoveIndex<CS & XP["components"] & IP["components"]>,
                >;
                services?: SVF & {
                    readonly [K: string]: (
                        db: FromPlugin<AmbientPlugin<XP, IP>>,
                    ) => unknown;
                };
                systems?: {
                    readonly [K in string]: {
                        create: (
                            db: Database<
                                FromSchemas<RemoveIndex<(...)> & (...)[(...)] & (...)[(...)]>,
                                FromSchemas<RemoveIndex<(...)> & (...)[(...)] & (...)[(...)]>,
                                RemoveIndex<A> & XP["archetypes"] & IP["archetypes"],
                                ToTransactionFunctions<
                                    RemoveIndex<(...)> & (...)[(...)] & (...)[(...)],
                                >,
                                S | StringKeyof<(...)[(...)]> | StringKeyof<(...)[(...)]>,
                                ToActionFunctions<RemoveIndex<(...)> & (...)[(...)] & (...)[(...)]>,
                                FromServiceFactories<RemoveIndex<(...)> & (...)[(...)] & (...)[(...)]>,
                                FromComputedFactories<
                                    RemoveIndex<(...)> & (...)[(...)] & (...)[(...)],
                                >,
                                RemoveIndex<IX> & XP["indexes"] & IP["indexes"],
                                never,
                            > & {
                                services: {
                                    -readonly [K in string | number | symbol]: FromServiceFactories<
                                        (...),
                                    >[K]
                                };
                                store: Store<
                                    FromSchemas<(...) & (...) & (...)>,
                                    FromSchemas<(...) & (...) & (...)>,
                                    RemoveIndex<(...)> & (...)[(...)] & (...)[(...)],
                                    {},
                                    never,
                                    DefaultFactoryKeys<(...) & (...) & (...)>,
                                >;
                            },
                        ) => void
                        | SystemFunction;
                        schedule?: {
                            after?: readonly NoInfer<(...) | (...) | (...)>[];
                            before?: readonly NoInfer<(...) | (...) | (...)>[];
                            during?: readonly NoInfer<(...) | (...) | (...)>[];
                        };
                    }
                };
                transactions?: TD;
            },
        ): CreatePluginResult<
            XP,
            RemoveIndex<CS>,
            RemoveIndex<RS>,
            RemoveIndex<A>,
            RemoveIndex<TD>,
            S,
            AD,
            RemoveIndex<SVF>,
            RemoveIndex<CVF>,
            RemoveIndex<IX>,
        >
      • Type Parameters

        Parameters

        • plugins: {
              actions?: AD & {
                  readonly [K: string]: (
                      db: Database<
                          FromSchemas<RemoveIndex<CS> & XP["components"] & IP["components"]>,
                          FromSchemas<RemoveIndex<RS> & XP["resources"] & IP["resources"]>,
                          RemoveIndex<A> & XP["archetypes"] & IP["archetypes"],
                          ToTransactionFunctions<
                              RemoveIndex<TD> & XP["transactions"] & IP["transactions"],
                          >,
                          S | StringKeyof<XP["systems"]> | StringKeyof<IP["systems"]>,
                          ToActionFunctions<XP["actions"] & IP["actions"]>,
                          FromServiceFactories<RemoveIndex<SVF> & XP["services"] & IP["services"]>,
                          FromComputedFactories<
                              RemoveIndex<CVF> & XP["computed"] & IP["computed"],
                          >,
                          RemoveIndex<IX> & XP["indexes"] & IP["indexes"],
                      >,
                      input?: any,
                  ) => any;
              };
              archetypes?: A;
              components?: CS & NoReservedNames<CS> & NoNameClash<
                  CS,
                  RemoveIndex<XP["resources"] & IP["resources"]>,
              >;
              computed?: CVF & PluginComputedFactories<
                  FullDBForPlugin<
                      RemoveIndex<CS>,
                      RemoveIndex<RS>,
                      RemoveIndex<A>,
                      {},
                      string,
                      XP["actions"] & IP["actions"],
                      AmbientPlugin<XP, IP>,
                      RemoveIndex<SVF>,
                      RemoveIndex<IX>,
                  >,
              >;
              extends?: XP;
              imports?: IP;
              indexes?: IX;
              resources?: RS & NoReservedNames<RS> & NoNameClash<
                  RS,
                  RemoveIndex<CS & XP["components"] & IP["components"]>,
              >;
              services?: SVF & {
                  readonly [K: string]: (
                      db: FromPlugin<AmbientPlugin<XP, IP>>,
                  ) => unknown;
              };
              systems?: {
                  readonly [K in string]: {
                      create: (
                          db: Database<
                              FromSchemas<RemoveIndex<(...)> & (...)[(...)] & (...)[(...)]>,
                              FromSchemas<RemoveIndex<(...)> & (...)[(...)] & (...)[(...)]>,
                              RemoveIndex<A> & XP["archetypes"] & IP["archetypes"],
                              ToTransactionFunctions<
                                  RemoveIndex<(...)> & (...)[(...)] & (...)[(...)],
                              >,
                              S | StringKeyof<(...)[(...)]> | StringKeyof<(...)[(...)]>,
                              ToActionFunctions<RemoveIndex<(...)> & (...)[(...)] & (...)[(...)]>,
                              FromServiceFactories<RemoveIndex<(...)> & (...)[(...)] & (...)[(...)]>,
                              FromComputedFactories<RemoveIndex<(...)> & (...)[(...)] & (...)[(...)]>,
                              RemoveIndex<IX> & XP["indexes"] & IP["indexes"],
                              never,
                          > & {
                              services: {
                                  -readonly [K in string | number | symbol]: FromServiceFactories<
                                      (...),
                                  >[K]
                              };
                              store: Store<
                                  FromSchemas<(...) & (...) & (...)>,
                                  FromSchemas<(...) & (...) & (...)>,
                                  RemoveIndex<(...)> & (...)[(...)] & (...)[(...)],
                                  {},
                                  never,
                                  DefaultFactoryKeys<(...) & (...) & (...)>,
                              >;
                          },
                      ) => void
                      | SystemFunction;
                      schedule?: {
                          after?: readonly NoInfer<(...) | (...) | (...)>[];
                          before?: readonly NoInfer<(...) | (...) | (...)>[];
                          during?: readonly NoInfer<(...) | (...) | (...)>[];
                      };
                  }
              };
              transactions?: TD;
          }

        Returns CreatePluginResult<
            XP,
            RemoveIndex<CS>,
            RemoveIndex<RS>,
            RemoveIndex<A>,
            RemoveIndex<TD>,
            S,
            AD,
            RemoveIndex<SVF>,
            RemoveIndex<CVF>,
            RemoveIndex<IX>,
        >