ChannelFilter type

Narrows which changes to a table invalidate a cached method.

The two forms behave in OPPOSITE directions, which is easy to get wrong:

  • A ChannelOperation array is an **exclusion** list. Operations named in it do NOT invalidate; everything else does. So [ChannelOperation.DELETE] means "invalidate on inserts and updates, ignore deletes" — not "invalidate on deletes". - A ChannelPayloadFilter is an **inclusion** predicate: it invalidates when it returns true.

Omitting the filter invalidates on every change to the table.

Signature:

export type ChannelFilter = ChannelOperation[] | ChannelPayloadFilter;

References: ChannelOperation, ChannelPayloadFilter

Read this page as plain markdown — no HTML, no navigation. For pasting into an LLM, or for an agent to fetch.