Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Break the offchain resolver interfaces into smaller pieces #243

Open
pikonha opened this issue Nov 29, 2024 · 0 comments
Open

Break the offchain resolver interfaces into smaller pieces #243

pikonha opened this issue Nov 29, 2024 · 0 comments
Assignees
Labels
enhancement New feature or request

Comments

@pikonha
Copy link
Contributor

pikonha commented Nov 29, 2024

Feature Request

Aiming to be more aligned with the ENSv2, we should break the interfaces into smaller versions and interact with them through multicall.

Describe Preferred Solution

interface OffchainRegister {

    /**
     * Registers a domain on the L2 contracts
     * @param name DNS-encoded name to be registered.
     * @param owner Owner of the domain
     * @param duration The duration in seconds of the registration.
     * @param secret The secret to be used for the registration based on commit/reveal
     * @param resolver The address of the resolver to set for this name.
     * @param fuses The fuses to set for this name.
     * @param extraData Any encoded additional data
     */
    function register(
        bytes calldata name,
        address owner,
        uint256 duration,
        bytes32 secret,
        address resolver,
        uint16 fuses,
        bytes memory extraData
    )
        external
        payable;

    /**
     * Sets the primary name for the given address
     * @param name DNS-encoded name to be set as primary.
     * @param owner Owner of the domain
     */
    function setPrimaryName(bytes calldata name, address owner) external;

    /**
     * Sets records in the associated resolver
     * @param name DNS-encoded name for which to set records.
     * @param data Multicallable data bytes for setting records in the associated resolver.
     */
    function setRecords(bytes calldata name, bytes[] calldata data) external;

}

Architecture Diagram

@pikonha pikonha added the enhancement New feature or request label Nov 29, 2024
@pikonha pikonha added this to the Offchain Resolver ENSIP milestone Nov 29, 2024
@pikonha pikonha self-assigned this Nov 29, 2024
@pikonha pikonha added this to ENS Nov 29, 2024
@pikonha pikonha moved this to 🔖 TODO in ENS Nov 29, 2024
@pikonha pikonha moved this from 🔖 TODO to ⛰️ Backlog in ENS Dec 2, 2024
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
enhancement New feature or request
Projects
Status: ⛰️ Backlog
Development

No branches or pull requests

1 participant