import React, { Component } from 'react';
import { type ViewStyle } from 'react-native';
import type { KlarnaMobileSDKError } from './types/common/KlarnaMobileSDKError';
import type { KlarnaOSMPlacementKey } from './types/common/KlarnaOSMPlacementKey';
import { KlarnaEnvironment } from './types/common/KlarnaEnvironment';
import { KlarnaRegion } from './types/common/KlarnaRegion';
import { KlarnaTheme } from './types/common/KlarnaTheme';
export interface KlarnaOSMViewProps {
    style?: ViewStyle;
    readonly clientId: string;
    readonly placementKey: KlarnaOSMPlacementKey;
    readonly locale: string;
    readonly purchaseAmount: string;
    readonly environment: KlarnaEnvironment;
    readonly region: KlarnaRegion;
    readonly theme?: KlarnaTheme;
    readonly backgroundColor?: string;
    readonly textColor?: string;
    readonly returnUrl?: string;
    readonly onError?: (error: KlarnaMobileSDKError) => void;
}
interface KlarnaOSMViewState {
    nativeViewHeight: number;
}
export declare class KlarnaOSMView extends Component<KlarnaOSMViewProps, KlarnaOSMViewState> {
    private osmViewRef;
    private isOSMViewReady;
    private hasError;
    constructor(props: KlarnaOSMViewProps);
    componentDidUpdate(prevProps: KlarnaOSMViewProps): void;
    componentWillUnmount(): void;
    render(): React.JSX.Element;
    private renderNative;
}
export default KlarnaOSMView;
//# sourceMappingURL=KlarnaOSMView.d.ts.map