import { CallState, DominantSpeakersInfo, EnvironmentInfo } from '@azure/communication-calling';
import { BreakoutRoom } from '@azure/communication-calling';
import { ParticipantCapabilities } from '@azure/communication-calling';
import { ParticipantRole } from '@azure/communication-calling';
import { CallClientState, DeviceManagerState, RemoteParticipantState, LocalVideoStreamState, CallErrors, DiagnosticsCallFeatureState, SpotlightCallFeatureState, IncomingCallState } from "../../calling-stateful-client/src";
import { TeamsIncomingCallState } from "../../calling-stateful-client/src";
import { ReactionState } from "../../calling-stateful-client/src";
import { CaptionsInfo } from "../../calling-stateful-client/src";
import { CaptionsKind, CapabilitiesChangeInfo } from '@azure/communication-calling';
import { RaisedHandState } from "../../calling-stateful-client/src";
import { SupportedCaptionLanguage, SupportedSpokenLanguage } from "../../react-components/src";
import { ConferencePhoneInfo, CallNotifications } from "../../calling-stateful-client/src";
/**
 * Common props used to reference calling declarative client state.
 *
 * @public
 */
export type CallingBaseSelectorProps = {
    callId: string;
};
/**
 * @private
 */
export declare const getDeviceManager: (state: CallClientState) => DeviceManagerState;
/**
 * @private
 */
export declare const getRole: (state: CallClientState, props: CallingBaseSelectorProps) => ParticipantRole | undefined;
/**
 * @private
 */
export declare const isHideAttendeeNamesEnabled: (state: CallClientState, props: CallingBaseSelectorProps) => boolean;
/**
 * @private
 */
export declare const getCapabilities: (state: CallClientState, props: CallingBaseSelectorProps) => ParticipantCapabilities | undefined;
/**
 * @private
 */
export declare const getLatestCapabilitiesChangedInfo: (state: CallClientState, props: CallingBaseSelectorProps) => CapabilitiesChangeInfo | undefined;
/**
 * @private
 */
export declare const getCallExists: (state: CallClientState, props: CallingBaseSelectorProps) => boolean;
/**
 * @private
 */
export declare const getDominantSpeakers: (state: CallClientState, props: CallingBaseSelectorProps) => undefined | DominantSpeakersInfo;
/**
 * @private
 */
export declare const getRemoteParticipants: (state: CallClientState, props: CallingBaseSelectorProps) => {
    [keys: string]: RemoteParticipantState;
} | undefined;
/**
 * @private
 */
export declare const getLocalParticipantRaisedHand: (state: CallClientState, props: CallingBaseSelectorProps) => RaisedHandState | undefined;
/**
 * @private
 */
export declare const getSpotlightCallFeature: (state: CallClientState, props: CallingBaseSelectorProps) => SpotlightCallFeatureState | undefined;
/**
 * @private
 */
export declare const getLocalParticipantReactionState: (state: CallClientState, props: CallingBaseSelectorProps) => ReactionState | undefined;
/**
 * @private
 */
export declare const getIsScreenSharingOn: (state: CallClientState, props: CallingBaseSelectorProps) => boolean | undefined;
/**
 * @private
 */
export declare const getIsMuted: (state: CallClientState, props: CallingBaseSelectorProps) => boolean | undefined;
/**
 * @private
 */
export declare const getOptimalVideoCount: (state: CallClientState, props: CallingBaseSelectorProps) => number | undefined;
/**
 * @private
 */
export declare const getLocalVideoStreams: (state: CallClientState, props: CallingBaseSelectorProps) => LocalVideoStreamState[] | undefined;
/**
 * @private
 */
export declare const getScreenShareRemoteParticipant: (state: CallClientState, props: CallingBaseSelectorProps) => string | undefined;
/**
 * @private
 */
export declare const getDisplayName: (state: CallClientState) => string | undefined;
/**
 * @private
 */
export declare const getIdentifier: (state: CallClientState) => string;
/**
 * @private
 */
export declare const getLatestErrors: (state: CallClientState) => CallErrors;
/**
 * @private
 */
export declare const getLatestNotifications: (state: CallClientState) => CallNotifications;
/**
 * @private
 */
export declare const getDiagnostics: (state: CallClientState, props: CallingBaseSelectorProps) => DiagnosticsCallFeatureState | undefined;
/**
 * @private
 */
export declare const getCallState: (state: CallClientState, props: CallingBaseSelectorProps) => CallState | undefined;
/**
 * @private
 */
export declare const getEnvironmentInfo: (state: CallClientState) => undefined | EnvironmentInfo;
/** @private */
export declare const getParticipantCount: (state: CallClientState, props: CallingBaseSelectorProps) => number | undefined;
/** @private */
export declare const getCaptionsKind: (state: CallClientState, props: CallingBaseSelectorProps) => CaptionsKind | undefined;
/** @private */
export declare const getCaptions: (state: CallClientState, props: CallingBaseSelectorProps) => CaptionsInfo[] | undefined;
/** @private */
export declare const getCaptionsStatus: (state: CallClientState, props: CallingBaseSelectorProps) => boolean | undefined;
/** @private */
export declare const getStartCaptionsInProgress: (state: CallClientState, props: CallingBaseSelectorProps) => boolean | undefined;
/** @private */
export declare const getCurrentCaptionLanguage: (state: CallClientState, props: CallingBaseSelectorProps) => SupportedCaptionLanguage | undefined;
/** @private */
export declare const getCurrentSpokenLanguage: (state: CallClientState, props: CallingBaseSelectorProps) => SupportedSpokenLanguage | undefined;
/** @private */
export declare const getSupportedCaptionLanguages: (state: CallClientState, props: CallingBaseSelectorProps) => SupportedCaptionLanguage[] | undefined;
/** @private */
export declare const getSupportedSpokenLanguages: (state: CallClientState, props: CallingBaseSelectorProps) => SupportedSpokenLanguage[] | undefined;
/** @private */
export declare const getMeetingConferencePhones: (state: CallClientState, props: CallingBaseSelectorProps) => ConferencePhoneInfo[] | undefined;
/**
 * selector for retrieving the incoming calls from state
 * @returns the incoming calls in the call client state
 * @private
 */
export declare const getIncomingCalls: (state: CallClientState) => IncomingCallState[] | TeamsIncomingCallState[];
/**
 * selector for retrieving the incoming calls that have been removed from state
 * @returns the incoming calls that have been removed
 * @private
 */
export declare const getRemovedIncomingCalls: (state: CallClientState) => IncomingCallState[] | TeamsIncomingCallState[];
/** @private */
export declare const getAssignedBreakoutRoom: (state: CallClientState, props: CallingBaseSelectorProps) => BreakoutRoom | undefined;
//# sourceMappingURL=baseSelectors.d.ts.map