import React from "react";
import { Socket } from "socket.io-client";
import { Participant, ShowAlert, CoHostResponsibility } from "../../@types/types";
export interface PermissionsModalParameters {
    participants: Participant[];
    member: string;
    islevel: string;
    socket: Socket;
    roomName: string;
    showAlert?: ShowAlert;
    coHostResponsibility?: CoHostResponsibility[];
    updateCoHostResponsibility?: (responsibilities: CoHostResponsibility[]) => void;
    getUpdatedAllParams: () => PermissionsModalParameters;
}
export interface PermissionsModalOptions {
    isPermissionsModalVisible: boolean;
    onPermissionsClose: () => void;
    parameters: PermissionsModalParameters;
    backgroundColor?: string;
    isDarkMode?: boolean;
    position?: "topLeft" | "topRight" | "bottomLeft" | "bottomRight" | "center";
    style?: object;
    renderMode?: "modal" | "sidebar" | "inline";
    renderContainer?: (options: {
        defaultContainer: React.ReactNode;
        dimensions: {
            width: number;
            height: number;
        };
    }) => React.ReactNode;
}
export type PermissionsModalType = (options: PermissionsModalOptions) => React.JSX.Element;
declare const PermissionsModal: React.FC<PermissionsModalOptions>;
export default PermissionsModal;
