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

# Struct PublicDataWitness

Module: `noir_aztec::oracle::get_public_data_witness`

```rust
pub struct PublicDataWitness {
    pub index: Field,
    pub leaf_preimage: PublicDataTreeLeafPreimage,
    pub path: [Field; 40],
}
```

## Fields

```rust
index: Field
```

```rust
leaf_preimage: PublicDataTreeLeafPreimage
```

```rust
path: [Field; 40]
```

## Trait implementations

```rust
impl Deserialize for PublicDataWitness
```

```rust
pub fn deserialize(fields: [Field; 45]) -> Self
```

```rust
pub fn stream_deserialize<let K: u32>(reader: &mut Reader<K>) -> Self
```

```rust
impl Eq for PublicDataWitness
```

```rust
pub fn eq(_self: Self, _other: Self) -> bool
```

```rust
impl Serialize for PublicDataWitness
```

```rust
pub fn serialize(self) -> [Field; 45]
```

```rust
pub fn stream_serialize<let K: u32>(self, writer: &mut Writer<K>)
```
