Typed API Reference
Most boolean methods are provided for diagnostic purposes only, leftover from earlier prototypes of the API. You should prefer the structured result methods. Boolean methods discard the diagnostic result code, reason and extension revision.
| Method | Returns | Required permission or state | Behaviour |
|---|---|---|---|
GetApiVersion() | SnowcloakIpcVersion | None | Returns the cleint's IPC major and minor version or throws when the provider is unavailable or incompatible. As of writing, this is 1.4. |
TryGetApiVersion(out version) | bool | None | Returns false for IpcNotReadyError or IpcTypeMismatchError; otherwise supplies the version. |
GetConnectionState() | SnowcloakConnectionState | None | Returns Snowcloak's current server connection state. Provider availability and server connection are separate. |
Register(requestedPermissions) | ExtensionGrant | Snowcloak provider available | Registers this wrapper load and requests the exact supplied capability mask. An accepted registration can still have pending permissions. |
RegisterExtension() | ExtensionGrant | Snowcloak provider available | Convenience registration requesting only extension transmit and visible receive capabilities. |
GetGrant() | ExtensionGrant | Current registration | Returns the current requested, granted and pending capabilities and current limits. |
UnregisterWithResult() | SnowcloakOperationResult | Current registration | Removes this wrapper load's registration. |
UnregisterExtension() | bool | Current registration | Boolean form of unregistering. |
OpenPluginIntegrations() | SnowcloakOperationResult | Current registration | Opens Snowcloak's settings focused on this plugin's integration entry. |
GetSelf() | SelfInfo? | ReadPairData | Returns current Snowcloak identity or null when unavailable. |
GetHandledObjectIndices() | IReadOnlyList<ushort> | ReadPairData | Returns current local object indices handled by Snowcloak. |
IsHandled(objectIndex) | bool | ReadPairData | Tests whether Snowcloak currently handles the supplied local object index. |
ResolvePair(objectIndex) | PairInfo? | ReadPairData | Resolves a currently visible handled object to a pair. |
GetPairByUid(uid) | PairInfo? | ReadPairData; additionally ReadPairDataOutOfRange when non-visible | Returns the currently accessible pair with that UID. |
GetVisiblePairs() | IReadOnlyList<PairInfo> | ReadPairData | Returns a snapshot of visible pairs ordered by UID. |
GetAllPairs() | IReadOnlyList<PairInfo> | ReadPairData and ReadPairDataOutOfRange | Returns all accessible pairs ordered by UID. |
GetVisiblePairCount() | int | ReadPairData | Returns the number of currently visible pairs. |
GetApplicationStatus(uid) | PairApplicationStatus? | Pair-read permissions applicable to that pair | Returns the effective current application status or null when inaccessible or unknown. |
GetProfileSummary(uid) | ProfileSummary? | ReadProfileData | Returns the available cached profile summary for a known pair. |
OpenProfileWithResult(uid) | SnowcloakOperationResult | OpenProfileWindow | Opens Snowcloak's profile window for a known pair. |
OpenProfile(uid) | bool | OpenProfileWindow | Boolean form of opening the profile window. |
OpenPairRequest(objectIndex) | SnowcloakOperationResult | OpenPairRequestWindow | Opens Snowcloak's confirmation flow for a valid visible non-paired target. It never sends a request without user confirmation. |
LoadMcdfToObjectWithResultAsync(path, objectIndex) | Task<SnowcloakOperationResult> | ApplyMcdf | Applies an existing local MCDF file to a valid GPose-range character. |
LoadMcdfToObjectAsync(path, objectIndex) | Task<bool> | ApplyMcdf | Boolean form of MCDF application. |
SetLocalDataWithResult(data) | SnowcloakOperationResult | TransmitExtensionData | Sets or clears this plugin's local opaque string. Empty and null clear it. |
SetLocalData(data) | bool | TransmitExtensionData | Boolean form of setting local extension data. |
GetLocalDataStatus() | ExtensionPublicationStatus? | TransmitExtensionData | Returns the current publication state or null when unavailable. |
GetRemoteData(uid) | string? | ReceiveExtensionData; additionally ReceiveExtensionDataOutOfRange when applicable | Returns only the currently accessible matching string. Absence does not explain why it is unavailable. |
GetRemoteDataState(uid) | RemoteExtensionDataState? | Receive permissions applicable to that pair | Returns structured availability and data state, or null for an unknown or inaccessible pair. |
GetRegisteredExtensionKeys() | IReadOnlyList<string> | Current registration | Returns Snowcloak's currently registered normalised plugin keys. These are integration identities, not user-facing payload namespaces. |
Dispose() | void | Any | Unsubscribes wrapper event handlers. It does not replace UnregisterWithResult() during orderly plugin shutdown. |