Function fetchContractMetadataFromBytecode

  • Parameters

    • address: string
    • chainId: number
    • provider: Provider
    • storage: ThirdwebStorage<IpfsUploadBatchOptions>
    • sdkOptions: undefined | {
          clientId?: string;
          gasSettings?: { maxPriceInGwei?: number | undefined; speed?: "standard" | "fast" | "fastest" | undefined; };
          gasless?: ({ openzeppelin: { relayerUrl: string; relayerForwarderAddress?: string | undefined; useEOAForwarder?: boolean | undefined; domainName?: string | undefined; domainVersion?: string | undefined; }; experimentalChainlessSupport?: boolean | undefined; }) | ({ biconomy: { apiId: string; apiKey: string; deadlineSeconds?: number | undefined; }; }) | ({ engine: { relayerUrl: string; }; });
          gatewayUrls?: string[];
          readonlySettings?: { rpcUrl: string; chainId?: number | undefined; };
          secretKey?: string;
          supportedChains?: ({ rpc: string[]; chainId: number; nativeCurrency: { symbol: string; name: string; decimals: number; }; slug: string; })[];
      } = {}

    Returns Promise<undefined | {
        abi: objectOutputType<{
            inputs: ZodDefault<ZodArray<ZodObject<{
                components: ZodOptional<ZodArray<ZodObject<{
                    name: ZodDefault<ZodString>;
                    type: ZodString;
                }, "strip", ZodAny, objectOutputType<{
                    name: ZodDefault<ZodString>;
                    type: ZodString;
                }, ZodAny, "strip">, objectInputType<{
                    name: ZodDefault<ZodString>;
                    type: ZodString;
                }, ZodAny, "strip">>, "many">>;
                name: ZodDefault<ZodString>;
                stateMutability: ZodOptional<ZodString>;
                type: ZodString;
            }, "strip", ZodAny, objectOutputType<{
                components: ZodOptional<ZodArray<ZodObject<{
                    name: ZodDefault<ZodString>;
                    type: ZodString;
                }, "strip", ZodAny, objectOutputType<{
                    name: ZodDefault<ZodString>;
                    type: ZodString;
                }, ZodAny, "strip">, objectInputType<{
                    name: ZodDefault<ZodString>;
                    type: ZodString;
                }, ZodAny, "strip">>, "many">>;
                name: ZodDefault<ZodString>;
                stateMutability: ZodOptional<ZodString>;
                type: ZodString;
            }, ZodAny, "strip">, objectInputType<{
                components: ZodOptional<ZodArray<ZodObject<{
                    name: ZodDefault<ZodString>;
                    type: ZodString;
                }, "strip", ZodAny, objectOutputType<{
                    name: ZodDefault<ZodString>;
                    type: ZodString;
                }, ZodAny, "strip">, objectInputType<{
                    name: ZodDefault<ZodString>;
                    type: ZodString;
                }, ZodAny, "strip">>, "many">>;
                name: ZodDefault<ZodString>;
                stateMutability: ZodOptional<ZodString>;
                type: ZodString;
            }, ZodAny, "strip">>, "many">>;
            name: ZodDefault<ZodString>;
            outputs: ZodDefault<ZodArray<ZodObject<{
                components: ZodOptional<ZodArray<ZodObject<{
                    name: ZodDefault<ZodString>;
                    type: ZodString;
                }, "strip", ZodAny, objectOutputType<{
                    name: ZodDefault<ZodString>;
                    type: ZodString;
                }, ZodAny, "strip">, objectInputType<{
                    name: ZodDefault<ZodString>;
                    type: ZodString;
                }, ZodAny, "strip">>, "many">>;
                name: ZodDefault<ZodString>;
                stateMutability: ZodOptional<ZodString>;
                type: ZodString;
            }, "strip", ZodAny, objectOutputType<{
                components: ZodOptional<ZodArray<ZodObject<{
                    name: ZodDefault<ZodString>;
                    type: ZodString;
                }, "strip", ZodAny, objectOutputType<{
                    name: ZodDefault<ZodString>;
                    type: ZodString;
                }, ZodAny, "strip">, objectInputType<{
                    name: ZodDefault<ZodString>;
                    type: ZodString;
                }, ZodAny, "strip">>, "many">>;
                name: ZodDefault<ZodString>;
                stateMutability: ZodOptional<ZodString>;
                type: ZodString;
            }, ZodAny, "strip">, objectInputType<{
                components: ZodOptional<ZodArray<ZodObject<{
                    name: ZodDefault<ZodString>;
                    type: ZodString;
                }, "strip", ZodAny, objectOutputType<{
                    name: ZodDefault<ZodString>;
                    type: ZodString;
                }, ZodAny, "strip">, objectInputType<{
                    name: ZodDefault<ZodString>;
                    type: ZodString;
                }, ZodAny, "strip">>, "many">>;
                name: ZodDefault<ZodString>;
                stateMutability: ZodOptional<ZodString>;
                type: ZodString;
            }, ZodAny, "strip">>, "many">>;
            type: ZodString;
        }, ZodAny, "strip">[];
        info: { title?: string | undefined; author?: string | undefined; details?: string | undefined; notice?: string | undefined; };
        isPartialAbi?: boolean;
        licenses: string[];
        metadata: Record<string, any>;
        name: string;
    }>

Generated using TypeDoc