# Prosa.kt/com.alexstyl.prosakt

## Types

[AnnotationScope](/api/-prosa.kt/com.alexstyl.prosakt/-annotation-scope/index.md)

```kotlin
class AnnotationScope
```

[ArgumentScope](/api/-prosa.kt/com.alexstyl.prosakt/-argument-scope/index.md)

```kotlin
class ArgumentScope : ExpressionScope
```

[BlockScope](/api/-prosa.kt/com.alexstyl.prosakt/-block-scope/index.md)

```kotlin
open class BlockScope : DeclarationContainerScope, ExpressionScope
```

[CallScope](/api/-prosa.kt/com.alexstyl.prosakt/-call-scope/index.md)

```kotlin
class CallScope
```

[CatchScope](/api/-prosa.kt/com.alexstyl.prosakt/-catch-scope/index.md)

```kotlin
class CatchScope
```

[ChainScope](/api/-prosa.kt/com.alexstyl.prosakt/-chain-scope/index.md)

```kotlin
class ChainScope
```

[ClassScope](/api/-prosa.kt/com.alexstyl.prosakt/-class-scope/index.md)

```kotlin
class ClassScope : MemberScope
```

[CodeScope](/api/-prosa.kt/com.alexstyl.prosakt/-code-scope/index.md)

```kotlin
open class CodeScope
```

[ConstructorParameterScope](/api/-prosa.kt/com.alexstyl.prosakt/-constructor-parameter-scope/index.md)

```kotlin
class ConstructorParameterScope : ParameterScope
```

[ConstructorPropertyScope](/api/-prosa.kt/com.alexstyl.prosakt/-constructor-property-scope/index.md)

```kotlin
class ConstructorPropertyScope
```

[ConstructorScope](/api/-prosa.kt/com.alexstyl.prosakt/-constructor-scope/index.md)

```kotlin
class ConstructorScope
```

[DeclarationContainerScope](/api/-prosa.kt/com.alexstyl.prosakt/-declaration-container-scope/index.md)

```kotlin
open class DeclarationContainerScope : CodeScope
```

[DeclarationScope](/api/-prosa.kt/com.alexstyl.prosakt/-declaration-scope/index.md)

```kotlin
open class DeclarationScope
```

[ExpressionScope](/api/-prosa.kt/com.alexstyl.prosakt/-expression-scope/index.md)

```kotlin
sealed interface ExpressionScope
```

A position that accepts an expression, or a body that records expression statements.

[FileScope](/api/-prosa.kt/com.alexstyl.prosakt/-file-scope/index.md)

```kotlin
class FileScope : DeclarationContainerScope
```

[FunctionBodyScope](/api/-prosa.kt/com.alexstyl.prosakt/-function-body-scope/index.md)

```kotlin
class FunctionBodyScope : BlockScope
```

[FunctionScope](/api/-prosa.kt/com.alexstyl.prosakt/-function-scope/index.md)

```kotlin
class FunctionScope : DeclarationScope
```

[FunctionTypeScope](/api/-prosa.kt/com.alexstyl.prosakt/-function-type-scope/index.md)

```kotlin
class FunctionTypeScope
```

[GetterBodyScope](/api/-prosa.kt/com.alexstyl.prosakt/-getter-body-scope/index.md)

```kotlin
class GetterBodyScope : BlockScope
```

[GetterScope](/api/-prosa.kt/com.alexstyl.prosakt/-getter-scope/index.md)

```kotlin
class GetterScope : DeclarationScope
```

[IfExpressionScope](/api/-prosa.kt/com.alexstyl.prosakt/-if-expression-scope/index.md)

```kotlin
class IfExpressionScope
```

[IfStatementScope](/api/-prosa.kt/com.alexstyl.prosakt/-if-statement-scope/index.md)

```kotlin
class IfStatementScope
```

[InterfaceScope](/api/-prosa.kt/com.alexstyl.prosakt/-interface-scope/index.md)

```kotlin
class InterfaceScope : MemberScope
```

[LambdaBodyScope](/api/-prosa.kt/com.alexstyl.prosakt/-lambda-body-scope/index.md)

```kotlin
class LambdaBodyScope : BlockScope
```

[MemberScope](/api/-prosa.kt/com.alexstyl.prosakt/-member-scope/index.md)

```kotlin
open class MemberScope : DeclarationContainerScope
```

[ObjectScope](/api/-prosa.kt/com.alexstyl.prosakt/-object-scope/index.md)

```kotlin
class ObjectScope : MemberScope
```

[ParameterScope](/api/-prosa.kt/com.alexstyl.prosakt/-parameter-scope/index.md)

```kotlin
open class ParameterScope
```

[PropertyScope](/api/-prosa.kt/com.alexstyl.prosakt/-property-scope/index.md)

```kotlin
class PropertyScope : DeclarationScope
```

[ProsaKtDsl](/api/-prosa.kt/com.alexstyl.prosakt/-prosa-kt-dsl/index.md)

```kotlin
@DslMarkerannotation class ProsaKtDsl
```

[TryScope](/api/-prosa.kt/com.alexstyl.prosakt/-try-scope/index.md)

```kotlin
class TryScope
```

[TypeScope](/api/-prosa.kt/com.alexstyl.prosakt/-type-scope/index.md)

```kotlin
class TypeScope
```

[TypeSlotScope](/api/-prosa.kt/com.alexstyl.prosakt/-type-slot-scope/index.md)

```kotlin
class TypeSlotScope
```

[Visibility](/api/-prosa.kt/com.alexstyl.prosakt/-visibility/index.md)

```kotlin
enum Visibility : Enum<Visibility>
```

[WhenCaseScope](/api/-prosa.kt/com.alexstyl.prosakt/-when-case-scope/index.md)

```kotlin
class WhenCaseScope
```

[WhenScope](/api/-prosa.kt/com.alexstyl.prosakt/-when-scope/index.md)

```kotlin
class WhenScope
```

## Functions

[ktFile](/api/-prosa.kt/com.alexstyl.prosakt/kt-file.md)

```kotlin
fun ktFile(body: FileScope.() -> Unit): String
```
