Create a durable instance of Zoe.

  • Parameters

    • options: {
          feeIssuerConfig: undefined | FeeIssuerConfig;
          shutdownZoeVat: undefined | ShutdownWithFailure;
          vatAdminSvc: undefined | VatAdminSvc | Promise<VatAdminSvc>;
          zcfSpec: undefined | ZCFSpec;
          zoeBaggage: Baggage;
      }
      • feeIssuerConfig: undefined | FeeIssuerConfig
      • shutdownZoeVat: undefined | ShutdownWithFailure

        a function to shutdown the Zoe Vat. This function needs to use the vatPowers available to a vat.

      • vatAdminSvc: undefined | VatAdminSvc | Promise<VatAdminSvc>

        The vatAdmin Service, which carries the power to create a new vat. If it's not available when makeZoe() is called, it must be provided later using setVatAdminService().

      • zcfSpec: undefined | ZCFSpec

        Pointer to the contract facet bundle.

      • zoeBaggage: Baggage

        the baggage for Zoe durability. Must be provided by caller

    Returns {
        feeMintAccess: FeeMintAccess;
        setVatAdminService: ((lateVatAdminSvc: any) => void) & RemotableObject<`Alleged: ${string}`> & RemotableBrand<{}, ((lateVatAdminSvc: any) => void)>;
        zoeConfigFacet: Guarded<{
            updateZcfBundleId(bundleId: any): void;
        }>;
        zoeService: Guarded<ZoeService>;
    }

    • feeMintAccess: FeeMintAccess
    • setVatAdminService: ((lateVatAdminSvc: any) => void) & RemotableObject<`Alleged: ${string}`> & RemotableBrand<{}, ((lateVatAdminSvc: any) => void)>
    • zoeConfigFacet: Guarded<{
          updateZcfBundleId(bundleId: any): void;
      }>
    • zoeService: Guarded<ZoeService>