# findEdge

Find an edge matching a predicate.

## Signatures

```ts
export declare const findEdge: {
    <E>(predicate: (edge: E) => boolean): <N, T extends Graph.Kind, Err, R>(ref: RefGraph<N, E, T, Err, R>) => RefSubject.Filtered<Graph.EdgeIndex, Err, R>;
    <N, E, T extends Graph.Kind, Err, R>(ref: RefGraph<N, E, T, Err, R>, predicate: (edge: E) => boolean): RefSubject.Filtered<Graph.EdgeIndex, Err, R>;
};
```

## Why

Models the possibly absent result of find edge as Filtered state, so absence stays explicit
while later source versions can make a value available.

## Ownership and lifetime

The find edge view retains no independent value. Its Effect read fails with NoSuchElement
while absent; the observing Scope owns and finalizes its Fx subscription.
