> ## Documentation Index
> Fetch the complete documentation index at: https://docs.cultura.xyz/llms.txt
> Use this file to discover all available pages before exploring further.

# CulturaDigitalAsset

# Solidity API

# Contract: CulturaDigitalAsset

### safeMint

```solidity theme={null}
function safeMintfunction safeMint(address to, string digitalAssetName, string digitalAssetDescription, struct ILicensed_ERC.ParentDigitalAsset[] parentDigitalAsset, string termsURI, string culturaDigitalAssetTokenURI) external returns (uint256)
```

Mints a new rights token with specified metadata

#### Parameters

| Name                          | Description                                                                               |
| ----------------------------- | ----------------------------------------------------------------------------------------- |
| `to`                          | Address that will receive the minted token                                                |
| `digitalAssetName`            | Name of the digital digitalAsset                                                          |
| `digitalAssetDescription`     | Description of the digital digitalAsset                                                   |
| `parentDigitalAsset`          | Array of parent digitalAsset information for derivative works                             |
| `termsURI`                    | URI pointing to the detailed terms of the digitalAsset                                    |
| `culturaDigitalAssetTokenURI` | URI pointing to the tokenURI of the digitalAsset, this is the standard tokenURI on ERC721 |

#### Return Values

| Description                              |
| ---------------------------------------- |
| uint256 The ID of the newly minted token |

## Public Functions

### constructor

```solidity theme={null}
function constructorconstructor(address defaultAdmin, address minter, address culturaTreasuryAddress, uint256 culturaTreasurySplit) public
```

### tokenURI

```solidity theme={null}
function tokenURIfunction tokenURI(uint256 tokenId) public view returns (string)
```

### supportsInterface

```solidity theme={null}
function supportsInterfacefunction supportsInterface(bytes4 interfaceId) public view returns (bool)
```

Checks if contract supports an interface

#### Parameters

| Name          | Description                                       |
| ------------- | ------------------------------------------------- |
| `interfaceId` | The interface identifier, as specified in ERC-165 |

#### Return Values

| Description                                    |
| ---------------------------------------------- |
| bool True if the contract supports interfaceId |

*Dev:* See {IERC165-supportsInterface}
