import { PortOneRequest } from '../request';
import { PortOneClient } from '../client';
import type { Request, Response } from '../types';
export declare class Payments extends PortOneRequest {
    constructor(portone: PortOneClient);
    /**
     * 결제 정보 사전 등록
     * @param paymentId 결제 건 ID
     */
    preRegister(paymentId: string, data: Request.PreRegisterPayment): Promise<import("axios").AxiosResponse<Response.PreRegisterPayment, any>>;
    /**
     * 결제 단건 조회
     * @param paymentId 조회할 결제 ID
     * @param storeId (Optional) 상점 ID. 미입력시 토큰 내 상점 ID 사용
     */
    find(paymentId: string, storeId?: string): Promise<import("axios").AxiosResponse<import("../types").Payment, any>>;
    /**
     * 결제 다건 조회(페이지 기반)
     */
    findMany(data: Request.FindManyPayments): Promise<import("axios").AxiosResponse<Response.FindManyPayments, any>>;
    /**
     * 결제 취소
     * @param paymentId 결제 건 ID
     */
    cancel(paymentId: string, data: Request.CancelPayment): Promise<import("axios").AxiosResponse<Response.CancelPayment, any>>;
    /**
     * 빌링키 결제
     * @param paymentId 결제 건 ID
     */
    payWithBillingKey(paymentId: string, data: Request.PayWithBillingKey): Promise<import("axios").AxiosResponse<Response.PayWithBillingKey, any>>;
    /**
     * 수기 결제
     * @param paymentId 결제 건 ID
     */
    payInstant(paymentId: string, data: Request.PayInstant): Promise<import("axios").AxiosResponse<Response.PayInstant, any>>;
    /**
     * 가상계좌 말소
     * @param paymentId 결제 건 ID
     * @param storeId (Optional) 상점 ID. 미입력시 토큰 내 상점 ID 사용
     */
    closeVirtualAccount(paymentId: string, storeId?: string): Promise<import("axios").AxiosResponse<Response.CloseVirtualAccount, any>>;
    /**
     * 에스크로 배송 정보 등록
     * @param paymentId 결제 건 ID
     */
    createEscrowLogistics(paymentId: string, data: Request.CreateEscrowLogistics): Promise<import("axios").AxiosResponse<Response.CreateEscrowLogistics, any>>;
    /**
     * 에스크로 배송 정보 수정
     * @param paymentId 결제 건 ID
     */
    updateEscrowLogistics(paymentId: string, data: Request.UpdateEscrowLogistics): Promise<import("axios").AxiosResponse<Response.UpdateEscrowLogistics, any>>;
    /**
     * 에스크로 구매 확정
     * @param paymentId 결제 건 ID
     */
    completeEscrow(paymentId: string, data: Request.CompleteEscrow): Promise<import("axios").AxiosResponse<Response.CompleteEscrow, any>>;
    /**
     * 웹훅 재발송
     * @param paymentId 결제 건 ID
     */
    resendWebhook(paymentId: string, data: Request.ResendWebhook): Promise<import("axios").AxiosResponse<Response.ResendWebhook, any>>;
    /**
     * 영수증 내 하위 상점 거래 등록. 지원되는 PG사: KG이니시스(이용 전 콘솔>결제연동에서 INIApi Key 등록 필요)
     * @param paymentId 등록할 하위 상점 결제 건 ID
     */
    registerStoreReceipt(paymentId: string, data: Request.RegisterStoreReceipt): Promise<import("axios").AxiosResponse<Response.RegisterStoreReceipt, any>>;
}
