# 트랜잭션 파라미터

&#x20;[트랜잭션 전송 함수(transaction)](https://symverse-lab.gitbook.io/wallet-provider/javascript-sdk/undefined-1/..#transaction)을 작성할때 필요한 메시지 세트를 제공하고 있습니다.

## TxMessageSet

Sct20, Sct21, Sct30 호출에 대한 트랜잭션 메시지 세트를 의미합니다.

```javascript
//
WalletProvider.Tx.Sct20
WalletProvider.Tx.Sct21
WalletProvider.Tx.Sct30
```

### SCT20 메시지 세트&#x20;

&#x20;아래는 sct20에서 제공하는 함수입니다.

```javascript
interface Sct20TxMessage {
    create: (input: Sct20Create) => TxMessage; // 토큰 생성
    transfer: (input: Sct20Transfer) => TxMessage; // 토큰 전송
    approve: (input: Sct20Approve) => TxMessage; // 토큰 양 위임
    decreaseApprove: (input: Sct20DecreaseApprove) => TxMessage; // 토큰 양 위임 취소
    transferFrom: (input: Sct20TransferFrom) => TxMessage; // 토큰 제 3자 전송
    burn: (input: Sct20Burn) => TxMessage; // 토큰 제거
    mint: (input: Sct20Mint) => TxMessage; // 토큰 생성
    pause: (input: Sct20Pause) => TxMessage; // 토큰 일시 정지
    unpause: (input: Sct20Unpause) => TxMessage; // 토큰 일시 정지 해제
    transferOwner: (input: Sct20TransferOwner) => TxMessage; // 소유자 변경
}
```

#### 사용 예제

```javascript
WalletProvider.Tx.Sct20.create({
    name: 'sinil',
    symbol: 'SIL',
    totalSupply: 500,
})
WalletProvider.Tx.Sct20.transfer({
    amount: 15, 
    contract: "0xff23dasd2321312s", 
    recipient: "0x0123dasd23213s2"
})
```

### SCT21 메시지 세트

아래는 sct21에서 제공하는 함수입니다.

```javascript
interface Sct21TxMessage {
    create: (input: Sct21Create) => TxMessage; // 토큰 생성
    accountLock: (input: Sct21AccountLock) => TxMessage; // 계정 잠금
    accountUnLock: (input: Sct21AccountUnLock) => TxMessage; // 계정 잠금 해제
    transfer: (input: Sct21Transfer) => TxMessage; // 토큰 전송
    approve: (input: Sct21Approve) => TxMessage; // 토큰 양 위임
    decreaseApprove: (input: Sct21DecreaseApprove) => TxMessage; // 토큰 양 위임 취소
    transferFrom: (input: Sct21TransferFrom) => TxMessage; // 토큰 제 3자 전송
    burn: (input: Sct21Burn) => TxMessage; // 토큰 제거
    mint: (input: Sct21Mint) => TxMessage; // 토큰 생성
    pause: (input: Sct21Pause) => TxMessage; // 토큰 일시 정지
    unpause: (input: Sct21Unpause) => TxMessage; // 토큰 일시 정지 해제
    transferOwner: (input: Sct21TransferOwner) => TxMessage; // 소유자 변경
}
```

#### 사용 예제

```javascript
WalletProvider.Tx.Sct21.create({
    name: 'sinil',
    symbol: 'SIL',
    totalLockSupply: 200,
    totalSupply: 500,
})
```

### SCT30 메시지 세트&#x20;

&#x20;아래는 sct30에서 제공하는 함수입니다.

```javascript
interface Sct30TxMessage {
	create: (input: Sct30Create) => TxMessage;
	createItem: (input: Sct30CreateItem) => TxMessage;
	transfer: (input: Sct30Transfer) => TxMessage;
	approve: (input: Sct30Approve) => TxMessage;
	transferFrom: (input: Sct30TransferFrom) => TxMessage;
}
```

#### 사용 예제

```javascript
WalletProvider.Tx.Sct30.create({
    name: 'sinil',
    symbol: 'SIL',
})
WalletProvider.Tx.Sct30.transfer({
    index: 3, 
    contract: "0xff23dasd2321312s", 
    recipient: "0x0123dasd23213s2"
})
```


---

# Agent Instructions: Querying This Documentation

If you need additional information that is not directly available in this page, you can query the documentation dynamically by asking a question.

Perform an HTTP GET request on the current page URL with the `ask` query parameter:

```
GET https://symverse-lab.gitbook.io/wallet-provider/javascript-sdk/undefined-1/undefined.md?ask=<question>
```

The question should be specific, self-contained, and written in natural language.
The response will contain a direct answer to the question and relevant excerpts and sources from the documentation.

Use this mechanism when the answer is not explicitly present in the current page, you need clarification or additional context, or you want to retrieve related documentation sections.
