# CallSignature

A TypeScript call signature, e.g. the part after the `function` keyword in an anonymous function expression, or a call signature in an interface.

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.

* jsx

  ```tsx
  import { CallSignature } from "@alloy-js/typescript";


  <CallSignature
    parameters={ParameterDescriptor[] | string[]}
    parametersChildren={Children}
    returnType={Children}
    typeParameters={TypeParameterDescriptor[] | string[]}
    typeParametersChildren={Children}
   />
  ```

* stc

  ```ts
  import { CallSignature } from "@alloy-js/typescript/stc";


  CallSignature({
    parameters: ParameterDescriptor[] | string[],
    parametersChildren: Children,
    returnType: Children,
    typeParameters: TypeParameterDescriptor[] | string[],
    typeParametersChildren: Children,
  }).children(children)
  ```

## Props

|                        |                                                                                         |                                                                                                                                                                                                                                       |
| ---------------------- | --------------------------------------------------------------------------------------- | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| parameters             | optional[ParameterDescriptor](../../types/parameterdescriptor/)\[] \| string\[]         | The parameters to the function. Can be an array of strings for parameters which don’t have a type or a default value. Otherwise, it’s an array of [ParameterDescriptor](../../types/parameterdescriptor/)s.                           |
| parametersChildren     | optional[Children](../../../core/types/children/)                                       | Raw content to be used as the parameter list.                                                                                                                                                                                         |
| returnType             | optional[Children](../../../core/types/children/)                                       | The return type of the function.                                                                                                                                                                                                      |
| typeParameters         | optional[TypeParameterDescriptor](../../types/typeparameterdescriptor/)\[] \| string\[] | The type parameters for the function. Can be an array of strings for type parameters which don’t have any constraints or a default type, otherwise it’s an array of [TypeParameterDescriptor](../../types/typeparameterdescriptor/)s. |
| typeParametersChildren | optional[Children](../../../core/types/children/)                                       | Raw content to be used as the type parameter list.                                                                                                                                                                                    |
