def METHOD_NAME(__self__,
             resource_name: str,
             api_version: str,
             kind: str,
             opts: Optional[pulumi.ResourceOptions] = None,
             metadata: Optional[pulumi.Input[pulumi.InputType['_meta.v1.ObjectMetaArgs']]] = None,
             spec: Optional[Any] = None,
             __props__=None):
    if opts is None:
        opts = pulumi.ResourceOptions()
    if not isinstance(opts, pulumi.ResourceOptions):
        raise TypeError('Expected resource options to be a ResourceOptions instance')
    if opts.version is None:
        opts.version = _utilities.get_version()
    if opts.id is None:
        if __props__ is not None:
            raise TypeError('__props__ is only valid when passed in combination with a valid opts.id to get an existing resource')
        __props__ = CustomResourcePatchArgs.__new__(CustomResourcePatchArgs)
        if api_version is None and not opts.urn:
            raise TypeError("Missing required property 'api_version'")
        __props__.__dict__["api_version"] = api_version
        if kind is None and not opts.urn:
            raise TypeError("Missing required property 'kind'")
        __props__.__dict__["kind"] = kind
        __props__.__dict__["metadata"] = metadata
        __props__.__dict__["spec"] = spec
    super(CustomResourcePatch, __self__).__init__(
        f"kubernetes:{api_version}:{kind}Patch",
        resource_name,
        __props__,
        opts)