import { ElementType, CardType } from './core/constants'; import RevealContainer from './core/external/reveal/reveal-container'; import CollectContainer from './core/external/collect/collect-container'; import SkyflowError from './libs/skyflow-error'; import { RequestMethod, IInsertRecordInput, IDetokenizeInput, IGetInput, RedactionType, EventName, Env, LogLevel, ValidationRuleType, IGetByIdInput, IInsertOptions, IDeleteRecordInput, IDeleteOptions, IGetOptions, InsertResponse, GetResponse, GetByIdResponse, DeleteResponse, ContainerOptions, DetokenizeResponse, IUpdateRequest, UpdateResponse, IUpdateOptions, ErrorType } from './utils/common'; import ComposableContainer from './core/external/collect/compose-collect-container'; import ThreeDS from './core/external/threeds/threeds'; import ComposableRevealContainer from './core/external/reveal/composable-reveal-container'; export declare enum ContainerType { COLLECT = "COLLECT", REVEAL = "REVEAL", COMPOSABLE = "COMPOSABLE", COMPOSE_REVEAL = "COMPOSABLE_REVEAL" } export interface SkyflowConfigOptions { logLevel?: LogLevel; env?: Env; trackingKey?: string; trackMetrics?: boolean; customElementsURL?: string; } export interface ISkyflow { vaultID?: string; vaultURL?: string; getBearerToken: () => Promise; options?: SkyflowConfigOptions; } declare class Skyflow { #private; constructor(config: ISkyflow); static init(config: ISkyflow): Skyflow; container(type: ContainerType.COLLECT, options?: ContainerOptions): CollectContainer; container(type: ContainerType.COMPOSABLE, options?: ContainerOptions): ComposableContainer; container(type: ContainerType.REVEAL, options?: ContainerOptions): RevealContainer; container(type: ContainerType.COMPOSE_REVEAL, options?: ContainerOptions): ComposableRevealContainer; insert(records: IInsertRecordInput, options?: IInsertOptions): Promise; detokenize(detokenizeInput: IDetokenizeInput): Promise; getById(getByIdInput: IGetByIdInput): Promise; get(getInput: IGetInput, options?: IGetOptions): Promise; delete(records: IDeleteRecordInput, options?: IDeleteOptions): Promise; update(record: IUpdateRequest, options?: IUpdateOptions): Promise; static get ContainerType(): typeof ContainerType; static get ElementType(): typeof ElementType; static get RedactionType(): typeof RedactionType; static get ErrorType(): typeof ErrorType; static get RequestMethod(): typeof RequestMethod; static get LogLevel(): typeof LogLevel; static get EventName(): typeof EventName; static get Env(): typeof Env; static get ValidationRuleType(): typeof ValidationRuleType; static get CardType(): typeof CardType; static get Error(): typeof SkyflowError; static get ThreeDS(): typeof ThreeDS; } export default Skyflow;