# InvisiblePlugin (/zh-CN/api-reference/whiteboard/whiteboard-sdk/web/classes/invisibleplugin)

> For AI agents: see the complete documentation index at [llms.txt](/llms.txt).

```ts
export declare abstract class InvisiblePlugin<A extends Object, MA extends Object>
```

## 成员 [#成员]

- [displayer](/zh-CN/api-reference/whiteboard/whiteboard-sdk/web/classes/invisibleplugin#displayer)
- [callbacks](/zh-CN/api-reference/whiteboard/whiteboard-sdk/web/classes/invisibleplugin#callbacks)
- [attributes](/zh-CN/api-reference/whiteboard/whiteboard-sdk/web/classes/invisibleplugin#attributes)
- [memberAttributes](/zh-CN/api-reference/whiteboard/whiteboard-sdk/web/classes/invisibleplugin#memberattributes)
- [constructor](/zh-CN/api-reference/whiteboard/whiteboard-sdk/web/classes/invisibleplugin#constructor)
- [onAttributesUpdate](/zh-CN/api-reference/whiteboard/whiteboard-sdk/web/classes/invisibleplugin#onattributesupdate)
- [onDestroy](/zh-CN/api-reference/whiteboard/whiteboard-sdk/web/classes/invisibleplugin#ondestroy)
- [getMemberAttributes](/zh-CN/api-reference/whiteboard/whiteboard-sdk/web/classes/invisibleplugin#getmemberattributes)
- [getAttributesValue](/zh-CN/api-reference/whiteboard/whiteboard-sdk/web/classes/invisibleplugin#getattributesvalue)
- [getMemberAttributesValue](/zh-CN/api-reference/whiteboard/whiteboard-sdk/web/classes/invisibleplugin#getmemberattributesvalue)
- [setAttributes](/zh-CN/api-reference/whiteboard/whiteboard-sdk/web/classes/invisibleplugin#setattributes)
- [setMemberAttributes](/zh-CN/api-reference/whiteboard/whiteboard-sdk/web/classes/invisibleplugin#setmemberattributes)
- [updateAttributes](/zh-CN/api-reference/whiteboard/whiteboard-sdk/web/classes/invisibleplugin#updateattributes)
- [updateMemberAttributes](/zh-CN/api-reference/whiteboard/whiteboard-sdk/web/classes/invisibleplugin#updatememberattributes)
- [destroy](/zh-CN/api-reference/whiteboard/whiteboard-sdk/web/classes/invisibleplugin#destroy)
- [_dispose](/zh-CN/api-reference/whiteboard/whiteboard-sdk/web/classes/invisibleplugin#_dispose)

## Properties [#properties]

<a id="displayer"></a>

### displayer [#displayer]

readonly displayer: Displayer;

<a id="callbacks"></a>

### callbacks [#callbacks]

readonly callbacks: Callbacks&lt;InvisibleCallbacks&lt;A, MA&gt;&gt;;

<a id="attributes"></a>

### attributes [#attributes]

readonly attributes: A;

<a id="memberattributes"></a>

### memberAttributes [#memberattributes]

readonly memberAttributes: MA;

## Constructors [#constructors]

<a id="constructor"></a>

### constructor [#constructor]

<ApiSignature>

constructor(context: InvisiblePluginContext);

</ApiSignature>

<ApiReturns>

<ApiReturnType>

InvisiblePlugin

</ApiReturnType>

</ApiReturns>

## Methods [#methods]

<a id="onattributesupdate"></a>

### onAttributesUpdate [#onattributesupdate]

<ApiSignature>

onAttributesUpdate(attributes: A): void;

</ApiSignature>

<ApiReturns>

<ApiReturnType>

void

</ApiReturnType>

</ApiReturns>

<a id="ondestroy"></a>

### onDestroy [#ondestroy]

<ApiSignature>

onDestroy(): void;

</ApiSignature>

<ApiReturns>

<ApiReturnType>

void

</ApiReturnType>

</ApiReturns>

<a id="getmemberattributes"></a>

### getMemberAttributes [#getmemberattributes]

<ApiSignature>

getMemberAttributes(memberId?: number): MA | null;

</ApiSignature>

<ApiReturns>

<ApiReturnType>

MA | null

</ApiReturnType>

</ApiReturns>

<a id="getattributesvalue"></a>

### getAttributesValue [#getattributesvalue]

<ApiSignature>

getAttributesValue(key: string[] | string): any;

</ApiSignature>

<ApiReturns>

<ApiReturnType>

any

</ApiReturnType>

</ApiReturns>

<a id="getmemberattributesvalue"></a>

### getMemberAttributesValue [#getmemberattributesvalue]

<ApiSignature>

getMemberAttributesValue(key: string[] | string): any;

</ApiSignature>

<ApiReturns>

<ApiReturnType>

any

</ApiReturnType>

</ApiReturns>

<a id="setattributes"></a>

### setAttributes [#setattributes]

<ApiSignature>

setAttributes(modifyAttributes: Partial&lt;A&gt;): void;

</ApiSignature>

<ApiReturns>

<ApiReturnType>

void

</ApiReturnType>

</ApiReturns>

<a id="setmemberattributes"></a>

### setMemberAttributes [#setmemberattributes]

<ApiSignature>

setMemberAttributes(modifyAttributes: Partial&lt;MA&gt;): void;

</ApiSignature>

<ApiReturns>

<ApiReturnType>

void

</ApiReturnType>

</ApiReturns>

<a id="updateattributes"></a>

### updateAttributes [#updateattributes]

<ApiSignature>

updateAttributes(keys: string | string[], value: any): void;

</ApiSignature>

<ApiReturns>

<ApiReturnType>

void

</ApiReturnType>

</ApiReturns>

<a id="updatememberattributes"></a>

### updateMemberAttributes [#updatememberattributes]

<ApiSignature>

updateMemberAttributes(keys: string | string[], value: any): void;

</ApiSignature>

<ApiReturns>

<ApiReturnType>

void

</ApiReturnType>

</ApiReturns>

<a id="destroy"></a>

### destroy [#destroy]

<ApiSignature>

destroy(): void;

</ApiSignature>

<ApiReturns>

<ApiReturnType>

void

</ApiReturnType>

</ApiReturns>

<a id="_dispose"></a>

### _dispose [#_dispose]

<ApiSignature>

_dispose(shouldCallback: boolean): void;

</ApiSignature>

<ApiReturns>

<ApiReturnType>

void

</ApiReturnType>

</ApiReturns>
