/** * Runs a (possibly async) row action behind a cancellable loading state, so * callers don't hand-roll spinners/try-catch. The action receives an * AbortSignal wired to the caller's cancel affordance; a newer action aborts * a still-running one (latest click wins). Failures surface through one * snackbar; cancellation is not a failure. * * Extracted from CursorPaginatedTable's runRowAction so non-cursor tables * (e.g. the bulk receive-request view's lazy full-PO fetches) share the same * behavior. Returns the action's result, or undefined when it failed or was * cancelled. */ export declare function useRowAction(): { pending: import("vue").Ref; run: (action: (signal: AbortSignal) => T | Promise) => Promise; cancel: () => void; };