> Aztec.nr API reference, v6.0.0 (mainnet and testnet). Index: https://docs.aztec.network/aztec-nr-api/v6.0.0/llms.txt

# Struct NoteGetterOptions

Module: `noir_aztec::note::note_getter_options`

```rust
pub struct NoteGetterOptions<Note, let N: u32, PreprocessorArgs, FilterArgs> {
    pub selects: BoundedVec<Option<Select>, N>,
    pub sorts: BoundedVec<Option<Sort>, N>,
    pub limit: u32,
    pub offset: u32,
    pub owner: Option<AztecAddress>,
    pub preprocessor: fn([Option<HintedNote<Note>>; 16], PreprocessorArgs) -> [Option<HintedNote<Note>>; 16],
    pub preprocessor_args: PreprocessorArgs,
    pub filter: fn([Option<HintedNote<Note>>; 16], FilterArgs) -> [Option<HintedNote<Note>>; 16],
    pub filter_args: FilterArgs,
    pub status: u8,
}
```

## Fields

```rust
selects: BoundedVec<Option<Select>, N>
```

```rust
sorts: BoundedVec<Option<Sort>, N>
```

```rust
limit: u32
```

```rust
offset: u32
```

```rust
owner: Option<AztecAddress>
```

```rust
preprocessor: fn([Option<HintedNote<Note>>; 16], PreprocessorArgs) -> [Option<HintedNote<Note>>; 16]
```

```rust
preprocessor_args: PreprocessorArgs
```

```rust
filter: fn([Option<HintedNote<Note>>; 16], FilterArgs) -> [Option<HintedNote<Note>>; 16]
```

```rust
filter_args: FilterArgs
```

```rust
status: u8
```

## Implementations

```rust
impl<Note, let N: u32, PreprocessorArgs, FilterArgs> NoteGetterOptions<Note, N, PreprocessorArgs, FilterArgs>
```

```rust
pub fn select<T>(
    &mut self,
    property_selector: PropertySelector<T>,
    comparator: u8,
    value: T,
) -> Self
where
    T: Packable
```

```rust
pub fn sort<T>(&mut self, property_selector: PropertySelector<T>, order: u8) -> Self
where
    T: Packable
```

```rust
pub fn set_limit(&mut self, limit: u32) -> Self
```

```rust
pub fn set_offset(&mut self, offset: u32) -> Self
```

```rust
pub fn set_status(&mut self, status: u8) -> Self
```

```rust
pub fn set_owner(&mut self, owner: AztecAddress) -> Self
```

```rust
impl<Note, let M: u32> NoteGetterOptions<Note, M, Field, Field>
where
    Note: NoteType,
    Note: Packable<N = M>
```

```rust
pub fn new() -> Self
```

```rust
impl<Note, let M: u32, PreprocessorArgs> NoteGetterOptions<Note, M, PreprocessorArgs, Field>
where
    Note: NoteType,
    Note: Packable<N = M>
```

```rust
pub fn with_preprocessor(
    preprocessor: fn([Option<HintedNote<Note>>; 16], PreprocessorArgs) -> [Option<HintedNote<Note>>; 16],
    preprocessor_args: PreprocessorArgs,
) -> Self
```

```rust
impl<Note, let M: u32, FilterArgs> NoteGetterOptions<Note, M, Field, FilterArgs>
where
    Note: NoteType,
    Note: Packable<N = M>
```

```rust
pub fn with_filter(
    filter: fn([Option<HintedNote<Note>>; 16], FilterArgs) -> [Option<HintedNote<Note>>; 16],
    filter_args: FilterArgs,
) -> Self
```
