> For the complete documentation index, see [llms.txt](https://daikirai.gitbook.io/scripting/llms.txt). Markdown versions of documentation pages are available by appending `.md` to page URLs; this page is available as [Markdown](https://daikirai.gitbook.io/scripting/guide/formatting.md).

# formatting

Raven scripts use **Java 8 syntax**, but they are not written like normal standalone Java files.

Do not include:

* A `package` declaration
* A `class` declaration
* Any `import` statements

Raven handles the required structure automatically.

Scripts may only use the classes listed on the [`Imports`](/scripting/documentation/imports.md) page, along with the available API wrappers. Additional imports are not supported. Fully qualified class names should not be used to bypass this restriction.

Nested `class`, `interface`, and `enum` declarations are supported.

Modifiers such as `public`, `private`, `protected`, and `static` are generally unnecessary, but normal Java access rules still apply. For example, a method implementing an interface method must be `public`.
