{
  "name": "str",
  "displayName": "String",
  "version": "1.0.0",
  "description": "Basic string manipulation functions",
  "homepage": "https://github.com/pulumi/pulumi-str",
  "repository": "https://github.com/pulumi/pulumi-str",
  "publisher": "Pulumi",
  "meta": {
    "moduleFormat": "(.*)"
  },
  "language": {
    "csharp": {
      "packageReferences": {
        "Pulumi": "3.*"
      }
    },
    "nodejs": {
      "dependencies": {
        "@pulumi/pulumi": "^3.0.0"
      },
      "respectSchemaVersion": true
    }
  },
  "config": {},
  "provider": {
    "type": "object"
  },
  "functions": {
    "str:index:replace": {
      "description": "Replace returns a copy of the string s with all\nnon-overlapping instances of old replaced by new.\nIf old is empty, it matches at the beginning of the string\nand after each UTF-8 sequence, yielding up to k+1 replacements\nfor a k-rune string.",
      "inputs": {
        "properties": {
          "new": {
            "type": "string"
          },
          "old": {
            "type": "string"
          },
          "string": {
            "type": "string"
          }
        },
        "type": "object",
        "required": [
          "new",
          "old",
          "string"
        ]
      },
      "outputs": {
        "properties": {
          "result": {
            "type": "string"
          }
        },
        "required": [
          "result"
        ],
        "type": "object"
      }
    },
    "str:index:trimPrefix": {
      "description": "Trim a prefix from a string.",
      "inputs": {
        "properties": {
          "prefix": {
            "type": "string"
          },
          "string": {
            "type": "string"
          }
        },
        "type": "object",
        "required": [
          "prefix",
          "string"
        ]
      },
      "outputs": {
        "properties": {
          "result": {
            "type": "string"
          }
        },
        "required": [
          "result"
        ],
        "type": "object"
      }
    },
    "str:index:trimSuffix": {
      "description": "Trim a suffix from a string.",
      "inputs": {
        "properties": {
          "string": {
            "type": "string"
          },
          "suffix": {
            "type": "string"
          }
        },
        "type": "object",
        "required": [
          "string",
          "suffix"
        ]
      },
      "outputs": {
        "properties": {
          "result": {
            "type": "string"
          }
        },
        "required": [
          "result"
        ],
        "type": "object"
      }
    },
    "str:regexp:match": {
      "description": "Match reports whether the string s contains any match of the regular expression pattern.",
      "inputs": {
        "properties": {
          "pattern": {
            "type": "string"
          },
          "string": {
            "type": "string"
          }
        },
        "type": "object",
        "required": [
          "pattern",
          "string"
        ]
      },
      "outputs": {
        "properties": {
          "matches": {
            "type": "boolean"
          }
        },
        "required": [
          "matches"
        ],
        "type": "object"
      }
    },
    "str:regexp:replace": {
      "description": "A regex based replace on a string.\n\nThe underlying regexp engine is the go \"regexp\" stdlib package.\nYou can see details at for available patterns at https://pkg.go.dev/regexp/syntax.",
      "inputs": {
        "properties": {
          "new": {
            "type": "string",
            "description": "The new string.\n\nNote: Inside repl, \"$\" signs are interpreted as an Expand, so for instance\n$1 represents the text of the first submatch. "
          },
          "old": {
            "type": "string",
            "description": "The regular expression to match against."
          },
          "string": {
            "type": "string",
            "description": "The string to operate over."
          }
        },
        "type": "object",
        "required": [
          "new",
          "old",
          "string"
        ]
      },
      "outputs": {
        "properties": {
          "result": {
            "description": "The input \"string\" where each pattern matching \"old\" is replaced by \"new\".",
            "type": "string"
          }
        },
        "required": [
          "result"
        ],
        "type": "object"
      }
    },
    "str:regexp:split": {
      "description": "Split a string on a regex.",
      "inputs": {
        "properties": {
          "count": {
            "type": "integer",
            "description": "`count` determines the number of substrings to return. \nIf `count` is not provided, it defaults to substrings.\nIf `count` is provided then the last substring will be the unsplit remainder.\nIt is an error to pass `count \u003c 1`."
          },
          "on": {
            "type": "string",
            "description": "The regex to split on."
          },
          "string": {
            "type": "string",
            "description": "The string on which to split."
          }
        },
        "type": "object",
        "required": [
          "on",
          "string"
        ]
      },
      "outputs": {
        "properties": {
          "result": {
            "description": "The result of the string split.",
            "items": {
              "type": "string"
            },
            "type": "array"
          }
        },
        "required": [
          "result"
        ],
        "type": "object"
      }
    }
  }
}
