react-native-ad-manager
Version:
A react-native component for Google Ad Manager banners, interstitials and native ads.
50 lines (49 loc) • 1.92 kB
TypeScript
import React from 'react';
import { ViewProps, NativeSyntheticEvent } from 'react-native';
import type { IAdManagerEventBase, IAdManagerEventAppEvent, IAdManagerEventLoadedBanner, IAdManagerEventSize } from './AdManagerEvent';
import type { IAdManagerTargeting } from './AdManagerTypes';
interface IAdManagerAdaptiveBannerPropsBase extends ViewProps {
/**
* Adaptive banner position.
*/
adPosition?: 'currentOrientationAnchored' | 'currentOrientationInline' | 'portraitInline' | 'landscapeInline' | 'inline';
/**
* Max height of the adaptive banner. Only works with "inline" adPosition.
*/
maxHeight?: number;
/**
* DFP ad unit ID
*/
adUnitID?: string;
/**
* Array of test devices. Use Banner.simulatorId for the simulator
*/
testDevices?: string[];
targeting?: IAdManagerTargeting;
}
interface IAdManagerAdaptiveBannerProps extends IAdManagerAdaptiveBannerPropsBase {
/**
* DFP library events
*/
onSizeChange?: (event: IAdManagerEventSize) => void;
onAdLoaded?: (event: IAdManagerEventLoadedBanner) => void;
onAdFailedToLoad?: (error: Error) => void;
onAppEvent?: (event: IAdManagerEventAppEvent) => void;
onAdOpened?: (event: IAdManagerEventBase) => void;
onAdClosed?: (event: IAdManagerEventBase) => void;
}
interface IAdManagerAdaptiveBannerState {
style: {
width?: number;
height?: number;
};
}
export declare class AdaptiveBanner extends React.Component<IAdManagerAdaptiveBannerProps, IAdManagerAdaptiveBannerState> {
constructor(props: IAdManagerAdaptiveBannerProps);
shouldComponentUpdate(nextProps: IAdManagerAdaptiveBannerProps, nextState: IAdManagerAdaptiveBannerState): boolean;
componentDidMount(): void;
loadBanner(): void;
handleSizeChange({ nativeEvent }: NativeSyntheticEvent<IAdManagerEventSize>): void;
render(): JSX.Element;
}
export {};