Skip to content

CallSignature

A Python call signature, e.g. the part after the def keyword and the name in a function expression.

import { CallSignature } from "@alloy-js/python";
<CallSignature
args
kwargs
parameters={(ParameterDescriptor | ParameterMarker | string)[]}
returnType={Children}
typeParameters={string[]}
/>
argsoptional booleanIndicates if there are positional arguments (*args) in the function
kwargsoptional booleanIndicates if there are keyword arguments (**kwargs) in the function
parametersoptional (ParameterDescriptor | ParameterMarker | string)[]The parameters to the call signature. Can be an array of strings (for simple parameter names), ParameterDescriptors, or special markers (”*” for keyword-only, ”/” for positional-only).
returnTypeoptional ChildrenThe return type of the function.
typeParametersoptional string[]The type parameters of the call signature, e.g. for a generic function. This is only supported in Python 3.12+.

Any parameters or type parameters declared in this signature will be placed in the current scope. This component does not make a scope to hold its parameters.

<CallSignature
  parameters={[{ name: "a", type: "int" }, { name: "b", type: "str" }]}
  returnType="int"
/>

renders to

(a: int, b: str) -> int