import type { StripeApiFetch } from './apiFetch';
import type { FetchStripeSignature } from './signature';
import type { GetDashboardUserEmail } from './getDashboardUserEmail';
import type { ShowToast } from './toast';
import type { GetUserAuthorizedPermissions } from './getUserAuthorizedPermissions';
import type { IsPermissionAuthorized } from './isPermissionAuthorized';
import { IsSourceInAuthorizedCSP } from './isSourceInAuthorizedCSP';
export interface PlatformRPCs {
    clipboardWriteText: (text: string) => Promise<void>;
    createOAuthState: (state: string) => {
        state: string;
        challenge: string;
    };
    stripeApiFetch: StripeApiFetch;
    refreshDashboardData: () => void;
    fetchStripeSignature: FetchStripeSignature;
    getDashboardUserEmail: GetDashboardUserEmail;
    showToast: ShowToast;
    getUserAuthorizedPermissions: GetUserAuthorizedPermissions;
    isPermissionAuthorized: IsPermissionAuthorized;
    isSourceInAuthorizedCSP: IsSourceInAuthorizedCSP;
    fetchAppEmbeddedKey: () => Promise<string>;
    supportsFetchAppEmbeddedKey: () => Promise<boolean>;
}
