@optimizely/optimizely-sdk
Version:
JavaScript SDK for Optimizely Feature Experimentation, Optimizely Full Stack (legacy), and Optimizely Rollouts
32 lines (31 loc) • 1.37 kB
TypeScript
/**
* Copyright 2022-2024 Optimizely
*
* Licensed under the Apache License, Version 2.0 (the "License");
* you may not use this file except in compliance with the License.
* You may obtain a copy of the License at
*
* http://www.apache.org/licenses/LICENSE-2.0
*
* Unless required by applicable law or agreed to in writing, software
* distributed under the License is distributed on an "AS IS" BASIS,
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
* See the License for the specific language governing permissions and
* limitations under the License.
*/
import { ConversionEvent, ImpressionEvent } from './event_builder/user_event';
import { LogEvent } from './event_dispatcher/event_dispatcher';
import { Service } from '../service';
import { Consumer, Fn } from '../utils/type';
import { LoggerFacade } from '../logging/logger';
import { Platform } from '../platform_support';
export declare const DEFAULT_FLUSH_INTERVAL = 30000;
export declare const DEFAULT_BATCH_SIZE = 10;
export type ProcessableEvent = ConversionEvent | ImpressionEvent;
export interface EventProcessor extends Service {
process(event: ProcessableEvent): Promise<unknown>;
onDispatch(handler: Consumer<LogEvent>): Fn;
setLogger(logger: LoggerFacade): void;
flushImmediately(): Promise<unknown>;
}
export declare const __platforms: Platform[];