/**
 * Copyright 2017 Google Inc. All rights reserved.
 *
 * 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 type { CDPSession } from './Connection';
import type { ExecutionContextDescription } from './devtools-types';
import type { DOMWorld } from './DOMWorld';
import type { EvaluateHandleFn, SerializableOrJSHandle } from './EvalTypes';
import type { Frame } from './FrameManager';
import type { ElementHandle } from './JSHandle';
import { JSHandle } from './JSHandle';
export declare const EVALUATION_SCRIPT_URL = "pptr://__puppeteer_evaluation_script__";
export declare class ExecutionContext {
    #private;
    _client: CDPSession;
    _world: DOMWorld;
    _contextId: number;
    _contextName: string;
    constructor(client: CDPSession, contextPayload: ExecutionContextDescription, world: DOMWorld);
    frame(): Frame | null;
    evaluate<ReturnType>(pageFunction: Function | string, ...args: unknown[]): Promise<ReturnType>;
    evaluateHandle<HandleType extends JSHandle | ElementHandle = JSHandle>(pageFunction: EvaluateHandleFn, ...args: SerializableOrJSHandle[]): Promise<HandleType>;
}
