tinacms
Version:
[](https://github.com/tinacms/tinacms/blob/main/LICENSE) [](https://www.npmjs.com/package/tinacms) [![Bui
38 lines (37 loc) • 1.47 kB
TypeScript
import { MediaStore, StaticMedia, TinaCMS } from '@tinacms/toolkit';
import React from 'react';
import { Client, TinaIOConfig } from '../internalClient';
import { CreateClientProps } from '../utils';
export interface TinaCloudMediaStoreClass {
new (client: Client): MediaStore;
}
export interface TinaCloudAuthWallProps {
cms?: TinaCMS;
children: React.ReactNode;
tinaioConfig?: TinaIOConfig;
getModalActions?: (args: {
closeModal: () => void;
}) => {
name: string;
action: () => Promise<void>;
primary: boolean;
}[];
mediaStore?: TinaCloudMediaStoreClass | (() => Promise<TinaCloudMediaStoreClass>);
}
export declare const AuthWallInner: ({ children, cms, getModalActions, }: TinaCloudAuthWallProps) => React.JSX.Element;
/**
* Provides the ability to setup your CMS and media while also providing an authentication wall so Tina is not enabled without a valid user session.
*
* Note: this will not restrict access for local filesystem clients
*/
export declare const TinaCloudProvider: (props: TinaCloudAuthWallProps & CreateClientProps & {
cmsCallback?: (cms: TinaCMS) => TinaCMS;
staticMedia: StaticMedia;
}) => React.JSX.Element;
/**
* @deprecated Please use `TinaCloudProvider` instead
*/
export declare const TinaCloudAuthWall: (props: TinaCloudAuthWallProps & CreateClientProps & {
cmsCallback?: (cms: TinaCMS) => TinaCMS;
staticMedia: StaticMedia;
}) => React.JSX.Element;