ContractConstructor: {
    new <const abi extends AbiRoot, contractId extends string>(
        params: ContractParameters<abi, contractId>,
    ): {
        [K in string | number | symbol]: (
            (
                IsNever<
                    abi extends AbiRoot
                        ? AbiRoot extends abi<abi>
                            ? string
                            : ExtractAbiFunctionNames<
                                abi<abi>,
                                "view",
                                (...)[(...)]["functions"],
                            >
                        : string,
                > extends false
                    ? {
                        view: {
                            [functionName in _viewFunctionNames]: GetViewFunction<
                                abi,
                                functionName,
                            >
                        };
                    }
                    : {}
            ) & (
                IsNever<
                    abi extends AbiRoot
                        ? AbiRoot extends abi<abi>
                            ? string
                            : ExtractAbiFunctionNames<
                                abi<abi>,
                                "call",
                                (...)[(...)]["functions"],
                            >
                        : string,
                > extends false
                    ? {
                        call: {
                            [functionName in _callFunctionNames]: GetCallFunction<
                                abi,
                                functionName,
                            >
                        };
                    }
                    : {}
            ) & { abi: abi; contractId: contractId }
        )[K]
    };
    new <const abi extends AbiRoot, contractId extends string>(
        params: { contractId: contractId; provider: Provider },
    ): {
        [K in string | number | symbol]: Omit<
            {
                [K in string
                | number
                | symbol]: (
                    (
                        IsNever<
                            abi extends AbiRoot ? (...) extends (...) ? (...) : (...) : string,
                        > extends false
                            ? {
                                view: {
                                    [functionName in _viewFunctionNames]: GetViewFunction<
                                        (...),
                                        (...),
                                    >
                                };
                            }
                            : {}
                    ) & (
                        IsNever<
                            abi extends AbiRoot ? (...) extends (...) ? (...) : (...) : string,
                        > extends false
                            ? {
                                call: {
                                    [functionName in _callFunctionNames]: GetCallFunction<
                                        (...),
                                        (...),
                                    >
                                };
                            }
                            : {}
                    ) & { abi: abi; contractId: contractId }
                )[K]
            },
            "abi",
        >[K]
    };
}

Type declaration

    • new <const abi extends AbiRoot, contractId extends string>(
          params: ContractParameters<abi, contractId>,
      ): {
          [K in string | number | symbol]: (
              (
                  IsNever<
                      abi extends AbiRoot
                          ? AbiRoot extends abi<abi>
                              ? string
                              : ExtractAbiFunctionNames<abi<abi>, "view", (...)[(...)]["functions"]>
                          : string,
                  > extends false
                      ? {
                          view: {
                              [functionName in _viewFunctionNames]: GetViewFunction<
                                  abi,
                                  functionName,
                              >
                          };
                      }
                      : {}
              ) & (
                  IsNever<
                      abi extends AbiRoot
                          ? AbiRoot extends abi<abi>
                              ? string
                              : ExtractAbiFunctionNames<abi<abi>, "call", (...)[(...)]["functions"]>
                          : string,
                  > extends false
                      ? {
                          call: {
                              [functionName in _callFunctionNames]: GetCallFunction<
                                  abi,
                                  functionName,
                              >
                          };
                      }
                      : {}
              ) & { abi: abi; contractId: contractId }
          )[K]
      }
    • Type Parameters

      • const abi extends AbiRoot
      • contractId extends string

      Parameters

      Returns {
          [K in string | number | symbol]: (
              (
                  IsNever<
                      abi extends AbiRoot
                          ? AbiRoot extends abi<abi>
                              ? string
                              : ExtractAbiFunctionNames<abi<abi>, "view", (...)[(...)]["functions"]>
                          : string,
                  > extends false
                      ? {
                          view: {
                              [functionName in _viewFunctionNames]: GetViewFunction<
                                  abi,
                                  functionName,
                              >
                          };
                      }
                      : {}
              ) & (
                  IsNever<
                      abi extends AbiRoot
                          ? AbiRoot extends abi<abi>
                              ? string
                              : ExtractAbiFunctionNames<abi<abi>, "call", (...)[(...)]["functions"]>
                          : string,
                  > extends false
                      ? {
                          call: {
                              [functionName in _callFunctionNames]: GetCallFunction<
                                  abi,
                                  functionName,
                              >
                          };
                      }
                      : {}
              ) & { abi: abi; contractId: contractId }
          )[K]
      }

    • new <const abi extends AbiRoot, contractId extends string>(
          params: { contractId: contractId; provider: Provider },
      ): {
          [K in string | number | symbol]: Omit<
              {
                  [K in string
                  | number
                  | symbol]: (
                      (
                          IsNever<
                              abi extends AbiRoot ? (...) extends (...) ? (...) : (...) : string,
                          > extends false
                              ? {
                                  view: {
                                      [functionName in _viewFunctionNames]: GetViewFunction<
                                          (...),
                                          (...),
                                      >
                                  };
                              }
                              : {}
                      ) & (
                          IsNever<
                              abi extends AbiRoot ? (...) extends (...) ? (...) : (...) : string,
                          > extends false
                              ? {
                                  call: {
                                      [functionName in _callFunctionNames]: GetCallFunction<
                                          (...),
                                          (...),
                                      >
                                  };
                              }
                              : {}
                      ) & { abi: abi; contractId: contractId }
                  )[K]
              },
              "abi",
          >[K]
      }
    • Type Parameters

      • const abi extends AbiRoot
      • contractId extends string

      Parameters

      • params: { contractId: contractId; provider: Provider }

      Returns {
          [K in string | number | symbol]: Omit<
              {
                  [K in string
                  | number
                  | symbol]: (
                      (
                          IsNever<
                              abi extends AbiRoot ? (...) extends (...) ? (...) : (...) : string,
                          > extends false
                              ? {
                                  view: {
                                      [functionName in _viewFunctionNames]: GetViewFunction<
                                          (...),
                                          (...),
                                      >
                                  };
                              }
                              : {}
                      ) & (
                          IsNever<
                              abi extends AbiRoot ? (...) extends (...) ? (...) : (...) : string,
                          > extends false
                              ? {
                                  call: {
                                      [functionName in _callFunctionNames]: GetCallFunction<
                                          (...),
                                          (...),
                                      >
                                  };
                              }
                              : {}
                      ) & { abi: abi; contractId: contractId }
                  )[K]
              },
              "abi",
          >[K]
      }