<!--
{
  "availability" : [
    "visionOS: 26.0.0 -"
  ],
  "documentType" : "symbol",
  "framework" : "TabletopKit",
  "identifier" : "/documentation/TabletopKit/TabletopInteraction/Delegate/shouldAcceptIndirectInteraction(initialValue:handoffValue:)",
  "metadataVersion" : "0.1.0",
  "role" : "Instance Method",
  "symbol" : {
    "kind" : "Instance Method",
    "modules" : [
      "TabletopKit"
    ],
    "preciseIdentifier" : "s:11TabletopKit0A11InteractionC8DelegateP020shouldAcceptIndirectC012initialValue07handoffI0AC03NewgC6IntentVAC0I0V_ALSgtF"
  },
  "title" : "shouldAcceptIndirectInteraction(initialValue:handoffValue:)"
}
-->

# shouldAcceptIndirectInteraction(initialValue:handoffValue:)

Implement `shouldAcceptIndirectInteraction(initialValue:handoffValue)` to provide the constants and initial configuration for
the new indirect interaction, and to decide if the new interaction should be accepted or rejected. If the function is not implemented,
the default implementation will be used, which will call into the more generic `shouldAcceptInteraction(initialValue:handoffValue)`.

```
func shouldAcceptIndirectInteraction(initialValue: TabletopInteraction.Value, handoffValue: TabletopInteraction.Value?) -> TabletopInteraction.NewIndirectInteractionIntent
```

## Parameters

`initialValue`

the initial `Value` for this interaction, using the default configuration and constants.

`handoffValue`

if not `nil`, this interaction is trying to take control of an equipment already controlled by another interaction,
causing a “handoff” of the equipment. The value provides the most recent data of the interaction that is
currently controlling the equipment.

## Return Value

the intent that describes the action to be taken on this new interaction (reject or accept with constants and configuration)

---

Copyright &copy; 2026 Apple Inc. All rights reserved. | [Terms of Use](https://www.apple.com/legal/internet-services/terms/site.html) | [Privacy Policy](https://www.apple.com/privacy/privacy-policy)