@portone/server-sdk
Version:
PortOne JavaScript SDK for server-side usage
489 lines (488 loc) • 24.3 kB
TypeScript
import { PolicyError } from "./PolicyError.js";
import type { Unrecognized } from "./../../../utils/unrecognized.js";
import { type PortOneClientInit } from "../../../client.js";
import type { ArchivePlatformAdditionalFeePolicyResponse } from "../../../generated/platform/policy/ArchivePlatformAdditionalFeePolicyResponse.js";
import type { ArchivePlatformContractResponse } from "../../../generated/platform/policy/ArchivePlatformContractResponse.js";
import type { ArchivePlatformDiscountSharePolicyResponse } from "../../../generated/platform/policy/ArchivePlatformDiscountSharePolicyResponse.js";
import type { CreatePlatformAdditionalFeePolicyResponse } from "../../../generated/platform/policy/CreatePlatformAdditionalFeePolicyResponse.js";
import type { CreatePlatformContractResponse } from "../../../generated/platform/policy/CreatePlatformContractResponse.js";
import type { CreatePlatformDiscountSharePolicyResponse } from "../../../generated/platform/policy/CreatePlatformDiscountSharePolicyResponse.js";
import type { ForbiddenError } from "../../../generated/common/ForbiddenError.js";
import type { GetPlatformAdditionalFeePoliciesResponse } from "../../../generated/platform/policy/GetPlatformAdditionalFeePoliciesResponse.js";
import type { GetPlatformContractsResponse } from "../../../generated/platform/policy/GetPlatformContractsResponse.js";
import type { GetPlatformDiscountSharePoliciesResponse } from "../../../generated/platform/policy/GetPlatformDiscountSharePoliciesResponse.js";
import type { InvalidRequestError } from "../../../generated/common/InvalidRequestError.js";
import type { PageInput } from "../../../generated/common/PageInput.js";
import type { PlatformAdditionalFeePolicy } from "../../../generated/platform/PlatformAdditionalFeePolicy.js";
import type { PlatformAdditionalFeePolicyAlreadyExistsError } from "../../../generated/platform/policy/PlatformAdditionalFeePolicyAlreadyExistsError.js";
import type { PlatformAdditionalFeePolicyFilterInput } from "../../../generated/platform/policy/PlatformAdditionalFeePolicyFilterInput.js";
import type { PlatformAdditionalFeePolicyNotFoundError } from "../../../generated/platform/PlatformAdditionalFeePolicyNotFoundError.js";
import type { PlatformArchivedAdditionalFeePolicyError } from "../../../generated/platform/PlatformArchivedAdditionalFeePolicyError.js";
import type { PlatformArchivedContractError } from "../../../generated/platform/PlatformArchivedContractError.js";
import type { PlatformArchivedDiscountSharePolicyError } from "../../../generated/platform/PlatformArchivedDiscountSharePolicyError.js";
import type { PlatformCannotArchiveScheduledAdditionalFeePolicyError } from "../../../generated/platform/policy/PlatformCannotArchiveScheduledAdditionalFeePolicyError.js";
import type { PlatformCannotArchiveScheduledContractError } from "../../../generated/platform/policy/PlatformCannotArchiveScheduledContractError.js";
import type { PlatformCannotArchiveScheduledDiscountSharePolicyError } from "../../../generated/platform/policy/PlatformCannotArchiveScheduledDiscountSharePolicyError.js";
import type { PlatformContract } from "../../../generated/platform/PlatformContract.js";
import type { PlatformContractAlreadyExistsError } from "../../../generated/platform/policy/PlatformContractAlreadyExistsError.js";
import type { PlatformContractFilterInput } from "../../../generated/platform/policy/PlatformContractFilterInput.js";
import type { PlatformContractNotFoundError } from "../../../generated/platform/PlatformContractNotFoundError.js";
import type { PlatformDiscountSharePolicy } from "../../../generated/platform/PlatformDiscountSharePolicy.js";
import type { PlatformDiscountSharePolicyAlreadyExistsError } from "../../../generated/platform/policy/PlatformDiscountSharePolicyAlreadyExistsError.js";
import type { PlatformDiscountSharePolicyFilterInput } from "../../../generated/platform/policy/PlatformDiscountSharePolicyFilterInput.js";
import type { PlatformDiscountSharePolicyNotFoundError } from "../../../generated/platform/PlatformDiscountSharePolicyNotFoundError.js";
import type { PlatformFeeInput } from "../../../generated/platform/PlatformFeeInput.js";
import type { PlatformNotEnabledError } from "../../../generated/platform/PlatformNotEnabledError.js";
import type { PlatformPayer } from "../../../generated/platform/PlatformPayer.js";
import type { PlatformSettlementCycleInput } from "../../../generated/platform/PlatformSettlementCycleInput.js";
import type { RecoverPlatformAdditionalFeePolicyResponse } from "../../../generated/platform/policy/RecoverPlatformAdditionalFeePolicyResponse.js";
import type { RecoverPlatformContractResponse } from "../../../generated/platform/policy/RecoverPlatformContractResponse.js";
import type { RecoverPlatformDiscountSharePolicyResponse } from "../../../generated/platform/policy/RecoverPlatformDiscountSharePolicyResponse.js";
import type { UnauthorizedError } from "../../../generated/common/UnauthorizedError.js";
import type { UpdatePlatformAdditionalFeePolicyResponse } from "../../../generated/platform/policy/UpdatePlatformAdditionalFeePolicyResponse.js";
import type { UpdatePlatformContractResponse } from "../../../generated/platform/policy/UpdatePlatformContractResponse.js";
import type { UpdatePlatformDiscountSharePolicyResponse } from "../../../generated/platform/policy/UpdatePlatformDiscountSharePolicyResponse.js";
/**
* 포트원 API 클라이언트를 생성합니다.
*/
export declare function PolicyClient(init: PortOneClientInit): PolicyClient;
export type PolicyClient = {
/**
* 추가 수수료 정책 다건 조회
*
* 여러 추가 수수료 정책을 조회합니다.
*
* @throws {@link GetPlatformAdditionalFeePoliciesError}
*/
getPlatformAdditionalFeePolicies: (options?: {
/** 요청할 페이지 정보 */
page?: PageInput;
/** 조회할 추가 수수료 정책 조건 필터 */
filter?: PlatformAdditionalFeePolicyFilterInput;
}) => Promise<GetPlatformAdditionalFeePoliciesResponse>;
/**
* 추가 수수료 정책 생성
*
* 새로운 추가 수수료 정책을 생성합니다.
*
* @throws {@link CreatePlatformAdditionalFeePolicyError}
*/
createPlatformAdditionalFeePolicy: (options: {
/**
* 생성할 추가 수수료 정책 아이디
*
* 명시하지 않으면 id 가 임의로 생성됩니다.
*/
id?: string;
/** 이름 */
name: string;
/** 수수료 정보 */
fee: PlatformFeeInput;
/** 메모 */
memo?: string;
/** 부가세 부담 주체 */
vatPayer: PlatformPayer;
}) => Promise<CreatePlatformAdditionalFeePolicyResponse>;
/**
* 추가 수수료 정책 조회
*
* 주어진 아이디에 대응되는 추가 수수료 정책을 조회합니다.
*
* @throws {@link GetPlatformAdditionalFeePolicyError}
*/
getPlatformAdditionalFeePolicy: (options: {
/** 조회할 추가 수수료 정책 아이디 */
id: string;
}) => Promise<PlatformAdditionalFeePolicy>;
/**
* 추가 수수료 정책 수정
*
* 주어진 아이디에 대응되는 추가 수수료 정책을 업데이트합니다.
*
* @throws {@link UpdatePlatformAdditionalFeePolicyError}
*/
updatePlatformAdditionalFeePolicy: (options: {
/** 업데이트할 추가 수수료 정책 아이디 */
id: string;
/** 책정 수수료 */
fee?: PlatformFeeInput;
/** 추가 수수료 정책 이름 */
name?: string;
/** 해당 추가 수수료 정책에 대한 메모 */
memo?: string;
/** 부가세를 부담할 주체 */
vatPayer?: PlatformPayer;
}) => Promise<UpdatePlatformAdditionalFeePolicyResponse>;
/**
* 추가 수수료 정책 보관
*
* 주어진 아이디에 대응되는 추가 수수료 정책을 보관합니다.
*
* @throws {@link ArchivePlatformAdditionalFeePolicyError}
*/
archivePlatformAdditionalFeePolicy: (options: {
/** 추가 수수료 정책 아이디 */
id: string;
}) => Promise<ArchivePlatformAdditionalFeePolicyResponse>;
/**
* 추가 수수료 정책 복원
*
* 주어진 아이디에 대응되는 추가 수수료 정책을 복원합니다.
*
* @throws {@link RecoverPlatformAdditionalFeePolicyError}
*/
recoverPlatformAdditionalFeePolicy: (options: {
/** 추가 수수료 정책 아이디 */
id: string;
}) => Promise<RecoverPlatformAdditionalFeePolicyResponse>;
/**
* 계약 다건 조회
*
* 여러 계약을 조회합니다.
*
* @throws {@link GetPlatformContractsError}
*/
getPlatformContracts: (options?: {
/** 요청할 페이지 정보 */
page?: PageInput;
/** 조회할 계약 조건 필터 */
filter?: PlatformContractFilterInput;
}) => Promise<GetPlatformContractsResponse>;
/**
* 계약 생성
*
* 새로운 계약을 생성합니다.
*
* @throws {@link CreatePlatformContractError}
*/
createPlatformContract: (options: {
/**
* 계약에 부여할 고유 아이디
*
* 명시하지 않는 경우 포트원이 임의의 아이디를 발급해드립니다.
*/
id?: string;
/** 계약 이름 */
name: string;
/** 계약 내부 표기를 위한 메모 */
memo?: string;
/** 중개수수료 */
platformFee: PlatformFeeInput;
/** 정산 주기 */
settlementCycle: PlatformSettlementCycleInput;
/** 중개수수료에 대한 부가세 부담 주체 */
platformFeeVatPayer: PlatformPayer;
/** 정산 시 결제금액 부가세 감액 여부 */
subtractPaymentVatAmount: boolean;
}) => Promise<CreatePlatformContractResponse>;
/**
* 계약 조회
*
* 주어진 아이디에 대응되는 계약을 조회합니다.
*
* @throws {@link GetPlatformContractError}
*/
getPlatformContract: (options: {
/** 조회할 계약 아이디 */
id: string;
}) => Promise<PlatformContract>;
/**
* 계약 수정
*
* 주어진 아이디에 대응되는 계약을 업데이트합니다.
*
* @throws {@link UpdatePlatformContractError}
*/
updatePlatformContract: (options: {
/** 업데이트할 계약 아이디 */
id: string;
/** 계약 이름 */
name?: string;
/** 계약 내부 표기를 위한 메모 */
memo?: string;
/** 중개수수료 */
platformFee?: PlatformFeeInput;
/** 정산 주기 */
settlementCycle?: PlatformSettlementCycleInput;
/** 중개수수료에 대한 부가세 부담 주체 */
platformFeeVatPayer?: PlatformPayer;
/** 정산 시 결제금액 부가세 감액 여부 */
subtractPaymentVatAmount?: boolean;
}) => Promise<UpdatePlatformContractResponse>;
/**
* 계약 보관
*
* 주어진 아이디에 대응되는 계약을 보관합니다.
*
* @throws {@link ArchivePlatformContractError}
*/
archivePlatformContract: (options: {
/** 계약 아이디 */
id: string;
}) => Promise<ArchivePlatformContractResponse>;
/**
* 계약 복원
*
* 주어진 아이디에 대응되는 계약을 복원합니다.
*
* @throws {@link RecoverPlatformContractError}
*/
recoverPlatformContract: (options: {
/** 계약 아이디 */
id: string;
}) => Promise<RecoverPlatformContractResponse>;
/**
* 할인 분담 정책 다건 조회
*
* 여러 할인 분담을 조회합니다.
*
* @throws {@link GetPlatformDiscountSharePoliciesError}
*/
getPlatformDiscountSharePolicies: (options?: {
/** 요청할 페이지 정보 */
page?: PageInput;
/** 조회할 할인 분담 정책 조건 필터 */
filter?: PlatformDiscountSharePolicyFilterInput;
}) => Promise<GetPlatformDiscountSharePoliciesResponse>;
/**
* 할인 분담 정책 생성
*
* 새로운 할인 분담을 생성합니다.
*
* @throws {@link CreatePlatformDiscountSharePolicyError}
*/
createPlatformDiscountSharePolicy: (options: {
/**
* 할인 분담에 부여할 고유 아이디
*
* 명시하지 않는 경우 포트원이 임의의 아이디를 발급해드립니다.
*/
id?: string;
/** 할인 분담에 부여할 이름 */
name: string;
/**
* 파트너가 분담할 할인금액의 비율을 의미하는 밀리 퍼센트 단위 (10^-5) 의 음이 아닌 정수이며, 파트너가 부담할 금액은 `할인금액 * partnerShareRate * 10^5` 로 책정합니다.
* (int32)
*/
partnerShareRate: number;
/** 해당 할인 분담에 대한 메모 ex) 파트너 브랜드 쿠폰 */
memo?: string;
}) => Promise<CreatePlatformDiscountSharePolicyResponse>;
/**
* 할인 분담 정책 조회
*
* 주어진 아이디에 대응되는 할인 분담을 조회합니다.
*
* @throws {@link GetPlatformDiscountSharePolicyError}
*/
getPlatformDiscountSharePolicy: (options: {
/** 조회할 할인 분담 정책 아이디 */
id: string;
}) => Promise<PlatformDiscountSharePolicy>;
/**
* 할인 분담 정책 수정
*
* 주어진 아이디에 대응되는 할인 분담을 업데이트합니다.
*
* @throws {@link UpdatePlatformDiscountSharePolicyError}
*/
updatePlatformDiscountSharePolicy: (options: {
/** 업데이트할 할인 분담 정책 아이디 */
id: string;
/** 할인 분담 정책 이름 */
name?: string;
/**
* 할인 분담율
*
* 파트너가 분담할 할인금액의 비율을 의미하는 밀리 퍼센트 단위 (10^-5) 의 음이 아닌 정수이며, 파트너가 부담할 금액은 `할인금액 * partnerShareRate * 10^5` 로 책정합니다.
* (int32)
*/
partnerShareRate?: number;
/** 해당 할인 분담에 대한 메모 */
memo?: string;
}) => Promise<UpdatePlatformDiscountSharePolicyResponse>;
/**
* 할인 분담 정책 보관
*
* 주어진 아이디에 대응되는 할인 분담을 보관합니다.
*
* @throws {@link ArchivePlatformDiscountSharePolicyError}
*/
archivePlatformDiscountSharePolicy: (options: {
/** 할인 분담 아이디 */
id: string;
}) => Promise<ArchivePlatformDiscountSharePolicyResponse>;
/**
* 할인 분담 정책 복원
*
* 주어진 아이디에 대응되는 할인 분담을 복원합니다.
*
* @throws {@link RecoverPlatformDiscountSharePolicyError}
*/
recoverPlatformDiscountSharePolicy: (options: {
/** 할인 분담 아이디 */
id: string;
}) => Promise<RecoverPlatformDiscountSharePolicyResponse>;
};
export declare class GetPlatformAdditionalFeePoliciesError extends PolicyError {
readonly data: ForbiddenError | InvalidRequestError | PlatformNotEnabledError | UnauthorizedError | {
readonly type: Unrecognized;
};
/** @ignore */
constructor(data: ForbiddenError | InvalidRequestError | PlatformNotEnabledError | UnauthorizedError | {
readonly type: Unrecognized;
});
}
export declare class CreatePlatformAdditionalFeePolicyError extends PolicyError {
readonly data: ForbiddenError | InvalidRequestError | PlatformAdditionalFeePolicyAlreadyExistsError | PlatformNotEnabledError | UnauthorizedError | {
readonly type: Unrecognized;
};
/** @ignore */
constructor(data: ForbiddenError | InvalidRequestError | PlatformAdditionalFeePolicyAlreadyExistsError | PlatformNotEnabledError | UnauthorizedError | {
readonly type: Unrecognized;
});
}
export declare class GetPlatformAdditionalFeePolicyError extends PolicyError {
readonly data: ForbiddenError | InvalidRequestError | PlatformAdditionalFeePolicyNotFoundError | PlatformNotEnabledError | UnauthorizedError | {
readonly type: Unrecognized;
};
/** @ignore */
constructor(data: ForbiddenError | InvalidRequestError | PlatformAdditionalFeePolicyNotFoundError | PlatformNotEnabledError | UnauthorizedError | {
readonly type: Unrecognized;
});
}
export declare class UpdatePlatformAdditionalFeePolicyError extends PolicyError {
readonly data: ForbiddenError | InvalidRequestError | PlatformAdditionalFeePolicyNotFoundError | PlatformArchivedAdditionalFeePolicyError | PlatformNotEnabledError | UnauthorizedError | {
readonly type: Unrecognized;
};
/** @ignore */
constructor(data: ForbiddenError | InvalidRequestError | PlatformAdditionalFeePolicyNotFoundError | PlatformArchivedAdditionalFeePolicyError | PlatformNotEnabledError | UnauthorizedError | {
readonly type: Unrecognized;
});
}
export declare class ArchivePlatformAdditionalFeePolicyError extends PolicyError {
readonly data: ForbiddenError | InvalidRequestError | PlatformAdditionalFeePolicyNotFoundError | PlatformCannotArchiveScheduledAdditionalFeePolicyError | PlatformNotEnabledError | UnauthorizedError | {
readonly type: Unrecognized;
};
/** @ignore */
constructor(data: ForbiddenError | InvalidRequestError | PlatformAdditionalFeePolicyNotFoundError | PlatformCannotArchiveScheduledAdditionalFeePolicyError | PlatformNotEnabledError | UnauthorizedError | {
readonly type: Unrecognized;
});
}
export declare class RecoverPlatformAdditionalFeePolicyError extends PolicyError {
readonly data: ForbiddenError | InvalidRequestError | PlatformAdditionalFeePolicyNotFoundError | PlatformNotEnabledError | UnauthorizedError | {
readonly type: Unrecognized;
};
/** @ignore */
constructor(data: ForbiddenError | InvalidRequestError | PlatformAdditionalFeePolicyNotFoundError | PlatformNotEnabledError | UnauthorizedError | {
readonly type: Unrecognized;
});
}
export declare class GetPlatformContractsError extends PolicyError {
readonly data: ForbiddenError | InvalidRequestError | PlatformNotEnabledError | UnauthorizedError | {
readonly type: Unrecognized;
};
/** @ignore */
constructor(data: ForbiddenError | InvalidRequestError | PlatformNotEnabledError | UnauthorizedError | {
readonly type: Unrecognized;
});
}
export declare class CreatePlatformContractError extends PolicyError {
readonly data: ForbiddenError | InvalidRequestError | PlatformContractAlreadyExistsError | PlatformNotEnabledError | UnauthorizedError | {
readonly type: Unrecognized;
};
/** @ignore */
constructor(data: ForbiddenError | InvalidRequestError | PlatformContractAlreadyExistsError | PlatformNotEnabledError | UnauthorizedError | {
readonly type: Unrecognized;
});
}
export declare class GetPlatformContractError extends PolicyError {
readonly data: ForbiddenError | InvalidRequestError | PlatformContractNotFoundError | PlatformNotEnabledError | UnauthorizedError | {
readonly type: Unrecognized;
};
/** @ignore */
constructor(data: ForbiddenError | InvalidRequestError | PlatformContractNotFoundError | PlatformNotEnabledError | UnauthorizedError | {
readonly type: Unrecognized;
});
}
export declare class UpdatePlatformContractError extends PolicyError {
readonly data: ForbiddenError | InvalidRequestError | PlatformArchivedContractError | PlatformContractNotFoundError | PlatformNotEnabledError | UnauthorizedError | {
readonly type: Unrecognized;
};
/** @ignore */
constructor(data: ForbiddenError | InvalidRequestError | PlatformArchivedContractError | PlatformContractNotFoundError | PlatformNotEnabledError | UnauthorizedError | {
readonly type: Unrecognized;
});
}
export declare class ArchivePlatformContractError extends PolicyError {
readonly data: ForbiddenError | InvalidRequestError | PlatformCannotArchiveScheduledContractError | PlatformContractNotFoundError | PlatformNotEnabledError | UnauthorizedError | {
readonly type: Unrecognized;
};
/** @ignore */
constructor(data: ForbiddenError | InvalidRequestError | PlatformCannotArchiveScheduledContractError | PlatformContractNotFoundError | PlatformNotEnabledError | UnauthorizedError | {
readonly type: Unrecognized;
});
}
export declare class RecoverPlatformContractError extends PolicyError {
readonly data: ForbiddenError | InvalidRequestError | PlatformContractNotFoundError | PlatformNotEnabledError | UnauthorizedError | {
readonly type: Unrecognized;
};
/** @ignore */
constructor(data: ForbiddenError | InvalidRequestError | PlatformContractNotFoundError | PlatformNotEnabledError | UnauthorizedError | {
readonly type: Unrecognized;
});
}
export declare class GetPlatformDiscountSharePoliciesError extends PolicyError {
readonly data: ForbiddenError | InvalidRequestError | PlatformNotEnabledError | UnauthorizedError | {
readonly type: Unrecognized;
};
/** @ignore */
constructor(data: ForbiddenError | InvalidRequestError | PlatformNotEnabledError | UnauthorizedError | {
readonly type: Unrecognized;
});
}
export declare class CreatePlatformDiscountSharePolicyError extends PolicyError {
readonly data: ForbiddenError | InvalidRequestError | PlatformDiscountSharePolicyAlreadyExistsError | PlatformNotEnabledError | UnauthorizedError | {
readonly type: Unrecognized;
};
/** @ignore */
constructor(data: ForbiddenError | InvalidRequestError | PlatformDiscountSharePolicyAlreadyExistsError | PlatformNotEnabledError | UnauthorizedError | {
readonly type: Unrecognized;
});
}
export declare class GetPlatformDiscountSharePolicyError extends PolicyError {
readonly data: ForbiddenError | InvalidRequestError | PlatformDiscountSharePolicyNotFoundError | PlatformNotEnabledError | UnauthorizedError | {
readonly type: Unrecognized;
};
/** @ignore */
constructor(data: ForbiddenError | InvalidRequestError | PlatformDiscountSharePolicyNotFoundError | PlatformNotEnabledError | UnauthorizedError | {
readonly type: Unrecognized;
});
}
export declare class UpdatePlatformDiscountSharePolicyError extends PolicyError {
readonly data: ForbiddenError | InvalidRequestError | PlatformArchivedDiscountSharePolicyError | PlatformDiscountSharePolicyNotFoundError | PlatformNotEnabledError | UnauthorizedError | {
readonly type: Unrecognized;
};
/** @ignore */
constructor(data: ForbiddenError | InvalidRequestError | PlatformArchivedDiscountSharePolicyError | PlatformDiscountSharePolicyNotFoundError | PlatformNotEnabledError | UnauthorizedError | {
readonly type: Unrecognized;
});
}
export declare class ArchivePlatformDiscountSharePolicyError extends PolicyError {
readonly data: ForbiddenError | InvalidRequestError | PlatformCannotArchiveScheduledDiscountSharePolicyError | PlatformDiscountSharePolicyNotFoundError | PlatformNotEnabledError | UnauthorizedError | {
readonly type: Unrecognized;
};
/** @ignore */
constructor(data: ForbiddenError | InvalidRequestError | PlatformCannotArchiveScheduledDiscountSharePolicyError | PlatformDiscountSharePolicyNotFoundError | PlatformNotEnabledError | UnauthorizedError | {
readonly type: Unrecognized;
});
}
export declare class RecoverPlatformDiscountSharePolicyError extends PolicyError {
readonly data: ForbiddenError | InvalidRequestError | PlatformDiscountSharePolicyNotFoundError | PlatformNotEnabledError | UnauthorizedError | {
readonly type: Unrecognized;
};
/** @ignore */
constructor(data: ForbiddenError | InvalidRequestError | PlatformDiscountSharePolicyNotFoundError | PlatformNotEnabledError | UnauthorizedError | {
readonly type: Unrecognized;
});
}