# Interface

* jsx

  ```tsx
  import { Interface } from "@alloy-js/java";


  <Interface
    abstract
    default
    extends={Children[]}
    final
    generics={Record<string, Children>}
    name={string | Namekey}
    native
    private
    protected
    public
    refkey={Refkey}
    static
    strictfp
    synchronized
    transient
    volatile
   />
  ```

* stc

  ```ts
  import { Interface } from "@alloy-js/java/stc";


  Interface({
    abstract: boolean,
    default: boolean,
    extends: Children[],
    final: boolean,
    generics: Record<string, Children>,
    name: string | Namekey,
    native: boolean,
    private: boolean,
    protected: boolean,
    public: boolean,
    refkey: Refkey,
    static: boolean,
    strictfp: boolean,
    synchronized: boolean,
    transient: boolean,
    volatile: boolean,
  }).children(children)
  ```

## Props

|              |                                                                     |   |
| ------------ | ------------------------------------------------------------------- | - |
| abstract     | optional boolean                                                    |   |
| children     | optional [Children](../../../core/types/children/)                  |   |
| default      | optional boolean                                                    |   |
| extends      | optional [Children](../../../core/types/children/)\[]               |   |
| final        | optional boolean                                                    |   |
| generics     | optional Record\<string, [Children](../../../core/types/children/)> |   |
| name         | string \| [Namekey](../../../core/types/namekey/)                   |   |
| native       | optional boolean                                                    |   |
| private      | optional boolean                                                    |   |
| protected    | optional boolean                                                    |   |
| public       | optional boolean                                                    |   |
| refkey       | optional [Refkey](../../../core/types/refkey/)                      |   |
| static       | optional boolean                                                    |   |
| strictfp     | optional boolean                                                    |   |
| synchronized | optional boolean                                                    |   |
| transient    | optional boolean                                                    |   |
| volatile     | optional boolean                                                    |   |
