///
/*!
* Copyright (c) Microsoft Corporation. All rights reserved.
* Licensed under the MIT License.
*/
import { ActionEvent, Actor, ActorLike, Animation, AnimationLike, Asset, AssetContainer, BehaviorType, CollisionEvent, CollisionLayer, Context, Guid, MediaCommand, MediaInstance, PerformanceStats, SetMediaStateOptions, TriggerEvent, User, UserLike } from '..';
import { ExportedPromise, Payloads, Protocols } from '../internal';
import { PhysicsBridgeTransformUpdate, PhysicsUploadServerTransformsUpdate } from '../actor/physics/physicsBridge';
/**
* @hidden
*/
export declare class ContextInternal {
context: Context;
actorSet: Map;
userSet: Map;
userGroupMapping: {
[id: string]: number;
};
assetContainers: Set;
animationSet: Map;
protocol: Protocols.Protocol;
interval: NodeJS.Timer;
generation: number;
prevGeneration: number;
__rpc: any;
_rigidBodyOwnerMap: Map;
_rigidBodyOrphanSet: Set;
private _rigidBodyDefaultOwner;
constructor(context: Context);
onSetAuthoritative: (userId: Guid) => void;
Create(options?: {
actor?: Partial;
}): Actor;
CreateFromLibrary(options: {
resourceId: string;
actor?: Partial;
}): Actor;
CreateFromPrefab(options: {
prefabId: Guid;
collisionLayer?: CollisionLayer;
actor?: Partial;
}): Actor;
private createActorFromPayload;
CreateFromGltf(container: AssetContainer, options: {
uri: string;
colliderType?: 'box' | 'mesh';
actor?: Partial;
}): Actor;
createAnimationFromData(dataId: Guid, targets: {
[placeholder: string]: Guid;
}, initialState?: Partial): Promise;
setMediaState(mediaInstance: MediaInstance, command: MediaCommand, options?: SetMediaStateOptions, mediaAssetId?: Guid): void;
startListening(): Promise;
start(): void;
stop(): void;
incrementGeneration(): void;
private assetsIterable;
update(): void;
private nextUpdatePromise;
private resolveNextUpdatePromise;
/** @hidden */
nextUpdate(): Promise;
sendDestroyActors(actorIds: Guid[]): void;
updateActors(sactors: Partial | Array>): void;
updatePhysicsBridgeTransforms(transforms: Partial): void;
updatePhysicsServerTransformsUpload(transforms: Partial): void;
updateAnimations(animPatches: Array>): void;
sendPayload(payload: Payloads.Payload, promise?: ExportedPromise): void;
sendPayloadAndGetReply(payload: T): Promise;
receiveRPC(payload: Payloads.EngineToAppRPC): void;
onClose: () => void;
userJoined(suser: Partial): void;
userLeft(userId: Guid): void;
updateUser(suser: Partial): void;
performAction(actionEvent: ActionEvent): void;
collisionEventRaised(collisionEvent: CollisionEvent): void;
triggerEventRaised(triggerEvent: TriggerEvent): void;
localDestroyActors(actorIds: Guid[]): void;
localDestroyActor(actor: Actor): void;
destroyActor(actorId: Guid): void;
destroyAnimation(animationId: Guid, cascadeIds?: Guid[]): void;
sendRigidBodyCommand(actorId: Guid, payload: Payloads.Payload): void;
setBehavior(actorId: Guid, newBehaviorType: BehaviorType): void;
lookupAsset(id: Guid): Asset;
getStats(): PerformanceStats;
}
//# sourceMappingURL=contextInternal.d.ts.map